当前位置: 首页 > news >正文

企业年报网上申报关键词排名优化顾问

企业年报网上申报,关键词排名优化顾问,深圳网站建设首选上榜网络,温岭网站建设制作demo案例 THREE.PointsMaterial 是 Three.js 中用于创建粒子系统材质的类。它允许你设置粒子系统的外观属性#xff0c;比如颜色、大小和透明度。下面是对其构造函数的参数、属性和方法的详细讲解。 构造函数 const material new THREE.PointsMaterial(parameters);参数比如颜色、大小和透明度。下面是对其构造函数的参数、属性和方法的详细讲解。 构造函数 const material new THREE.PointsMaterial(parameters);参数parameters parameters 是一个对象用于初始化材质的各种属性。常用参数包括 color: THREE.Color | string | number 粒子的颜色。例如new THREE.Color(0xffffff) 或者 0xffffff。 map: THREE.Texture 用于每个粒子的纹理贴图。 size: number 粒子的大小默认值是 1。 sizeAttenuation: boolean 粒子的大小是否随相机深度衰减默认值是 true。 vertexColors: boolean 是否使用顶点颜色默认值是 false。 opacity: number 材质的不透明度范围是 0.0 到 1.0默认值是 1.0。 transparent: boolean 是否使用透明度默认值是 false。 alphaTest: number 透明度测试的阈值范围是 0.0 到 1.0默认值是 0。 blending: THREE.Blending 材质的混合模式默认值是 THREE.NormalBlending。 depthTest: boolean 是否进行深度测试默认值是 true。 depthWrite: boolean 是否进行深度写入默认值是 true。 属性 color: THREE.Color 粒子的颜色默认值是 new THREE.Color(0xffffff)。 map: THREE.Texture | null 用于每个粒子的纹理贴图默认值是 null。 size: number 粒子的大小默认值是 1。 sizeAttenuation: boolean 粒子的大小是否随相机深度衰减默认值是 true。 vertexColors: boolean 是否使用顶点颜色默认值是 false。 opacity: number 材质的不透明度范围是 0.0 到 1.0默认值是 1.0。 transparent: boolean 是否使用透明度默认值是 false。 alphaTest: number 透明度测试的阈值范围是 0.0 到 1.0默认值是 0。 blending: THREE.Blending 材质的混合模式默认值是 THREE.NormalBlending。 depthTest: boolean 是否进行深度测试默认值是 true。 depthWrite: boolean 是否进行深度写入默认值是 true。 方法 THREE.PointsMaterial 继承了 THREE.Material 的所有方法。常用的方法包括 clone() 创建一个材质的副本。 const clonedMaterial material.clone();copy(source) 从另一个材质复制属性。 material.copy(otherMaterial);dispose() 释放材质占用的内存。当材质不再需要时应该调用此方法。 material.dispose();setValues(parameters) 设置材质的属性。parameters 对象的属性名称和 THREE.PointsMaterial 的构造函数参数相同。 material.setValues({ color: 0xff0000, size: 2 });示例 下面是一个使用 THREE.PointsMaterial 创建粒子系统的示例 import * as THREE from three;// 创建场景 const scene new THREE.Scene();// 创建相机 const camera new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000); camera.position.z 5;// 创建渲染器 const renderer new THREE.WebGLRenderer(); renderer.setSize(window.innerWidth, window.innerHeight); document.body.appendChild(renderer.domElement);// 创建粒子几何体 const geometry new THREE.BufferGeometry(); const vertices [];for (let i 0; i 10000; i) {const x THREE.MathUtils.randFloatSpread(2000);const y THREE.MathUtils.randFloatSpread(2000);const z THREE.MathUtils.randFloatSpread(2000);vertices.push(x, y, z); }geometry.setAttribute(position, new THREE.Float32BufferAttribute(vertices, 3));// 创建粒子材质 const material new THREE.PointsMaterial({color: 0x888888,size: 1,sizeAttenuation: true,transparent: true,opacity: 0.75 });// 创建粒子系统 const particles new THREE.Points(geometry, material); scene.add(particles);// 渲染循环 function animate() {requestAnimationFrame(animate);particles.rotation.x 0.001;particles.rotation.y 0.002;renderer.render(scene, camera); }animate();这个示例创建了一个简单的粒子系统粒子随机分布在一个立方体区域内并且粒子材质设置为半透明的灰色。 !DOCTYPE html html langen headtitlethree.js webgl - buffergeometry - custom VBOs/titlemeta charsetutf-8meta nameviewport contentwidthdevice-width, user-scalableno, minimum-scale1.0, maximum-scale1.0link typetext/css relstylesheet hrefmain.css /head bodydiv idcontainer/div div idinfoa hrefhttps://threejs.org target_blank relnoopenerthree.js/a webgl - buffergeometry - custom VBOs/divscript typeimportmap{imports: {three: ../build/three.module.js,three/addons/: ./jsm/}} /scriptscript typemoduleimport * as THREE from three;import Stats from three/addons/libs/stats.module.js;let container, stats;let camera, scene, renderer;let points;const particles 300000; // 粒子数量let drawCount 10000; // 绘制的初始粒子数量init();animate();function init() {container document.getElementById(container);// 初始化渲染器renderer new THREE.WebGLRenderer({ antialias: false });renderer.setPixelRatio(window.devicePixelRatio);renderer.setSize(window.innerWidth, window.innerHeight);container.appendChild(renderer.domElement);// 初始化相机camera new THREE.PerspectiveCamera(27, window.innerWidth / window.innerHeight, 5, 3500);camera.position.z 2750;// 初始化场景scene new THREE.Scene();scene.background new THREE.Color(0x050505);scene.fog new THREE.Fog(0x050505, 2000, 3500);// 创建 BufferGeometryconst geometry new THREE.BufferGeometry();const positions [];const positions2 [];const colors [];const color new THREE.Color();const n 1000, n2 n / 2; // 粒子在立方体中的分布范围for (let i 0; i particles; i) {// 随机生成粒子的位置const x Math.random() * n - n2;const y Math.random() * n - n2;const z Math.random() * n - n2;positions.push(x, y, z);positions2.push(z * 0.3, x * 0.3, y * 0.3);// 根据位置生成颜色const vx (x / n) 0.5;const vy (y / n) 0.5;const vz (z / n) 0.5;color.setRGB(vx, vy, vz, THREE.SRGBColorSpace);colors.push(color.r, color.g, color.b);}// 获取 WebGL 上下文const gl renderer.getContext();// 创建并绑定第一个位置缓冲区const pos gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER, pos);gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(positions), gl.STATIC_DRAW);// 创建并绑定第二个位置缓冲区const pos2 gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER, pos2);gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(positions2), gl.STATIC_DRAW);// 创建并绑定颜色缓冲区const rgb gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER, rgb);gl.bufferData(gl.ARRAY_BUFFER, new Float32Array(colors), gl.STATIC_DRAW);// 将缓冲区数据转换为 GLBufferAttribute 并设置到几何体属性中const posAttr1 new THREE.GLBufferAttribute(pos, gl.FLOAT, 3, 4, particles);const posAttr2 new THREE.GLBufferAttribute(pos2, gl.FLOAT, 3, 4, particles);geometry.setAttribute(position, posAttr1);// 每隔两秒切换位置属性setInterval(function () {const attr geometry.getAttribute(position);geometry.setAttribute(position, (attr posAttr1) ? posAttr2 : posAttr1);}, 2000);geometry.setAttribute(color, new THREE.GLBufferAttribute(rgb, gl.FLOAT, 3, 4, particles));// 创建粒子材质const material new THREE.PointsMaterial({ size: 15, vertexColors: true });// 创建粒子系统并添加到场景中points new THREE.Points(geometry, material);points.frustumCulled false; // 关闭视锥体剔除scene.add(points);// 初始化统计信息stats new Stats();container.appendChild(stats.dom);// 监听窗口大小变化window.addEventListener(resize, onWindowResize);}function onWindowResize() {camera.aspect window.innerWidth / window.innerHeight;camera.updateProjectionMatrix();renderer.setSize(window.innerWidth, window.innerHeight);}function animate() {requestAnimationFrame(animate);render();stats.update();}function render() {drawCount (Math.max(5000, drawCount) Math.floor(500 * Math.random())) % particles;points.geometry.setDrawRange(0, drawCount);const time Date.now() * 0.001;points.rotation.x time * 0.1;points.rotation.y time * 0.2;renderer.render(scene, camera);}/script/body /html主要功能说明 初始化 Three.js 渲染器、相机和场景 创建并设置渲染器和相机。将渲染器的 DOM 元素添加到 HTML 容器中。设置场景背景和雾效果。 创建 BufferGeometry 生成粒子的位置和颜色数据。将这些数据绑定到 WebGL 缓冲区。将这些缓冲区转换为 GLBufferAttribute 并设置为几何体的属性。 设置粒子系统和材质 使用 PointsMaterial 创建粒子材质。将材质和几何体结合成 Points 对象并添加到场景中。 动画和渲染循环 通过 requestAnimationFrame 实现动画循环。在每一帧中更新粒子系统的旋转并调用渲染器渲染场景。 窗口调整处理 监听窗口大小变化事件调整相机和渲染器的尺寸。 压图地址 一个功能强大的图片处理工具它可以满足用户对于图片压缩、格式转换、质量调节以及长图片分割等多种需求。 【轻松压缩一键搞定】您的图片处理神器来了 压图地址 您是否曾为图片太大无法上传而烦恼是否为图片格式不兼容而头疼现在有了我们的图片处理工具这些问题将不复存在 功能亮点 批量压缩无论您有多少张图片无论尺寸大小我们的工具都能一次性处理让您的工作效率翻倍 格式转换支持多种图片格式之间的轻松转换满足您在不同场景下的使用需求。 压缩质量可调想要保留更多细节还是追求更小的文件大小压缩质量由您说了算 长图片分割再也不用担心长图无法完整显示或处理了我们的工具能轻松将长图分割成多张图片方便您进行后续编辑和分享。 获取网络图片可将网络路径图片路径转化成自己的图片进行处理下载,支持批量转换图片下载 无论是从相机导出的大图还是手机拍摄的生活照我们的工具都能轻松应对让您的图片处理变得简单又高效 压图地址
http://www.zqtcl.cn/news/716688/

相关文章:

  • 2018外贸网站排名购物网站网页设计
  • 赣州培训学做网站软装设计理念
  • 银川建设网站公司wordpress 小工具添加图片
  • 做任务领黄钻的网站怎样建免费个人网站
  • 网站怎么做留言提交功能网站制作公司司
  • 大连购物网站开发wordpress怎么用ftp上传插件
  • 做微商怎样加入网站卖东西赚钱做代理的项目在哪个网站
  • 企业电子商务网站平台建设奉贤做网站公司
  • 非凡网站建设 新三板代运营套餐价格表
  • 湖南建立网站营销设计网站建设的创新之处
  • 手机站是什么意思免费建论坛
  • 网站开发学习路线专用车网站建设哪家好
  • 贵阳网站建设端觉wordpress gif 点击播放
  • 苏州产品推广公司厦门关键词seo
  • 建设内网网站流程凡客诚品现在还有吗
  • 西安网站公司免费云手机无限时间版
  • 网站建设与管理案例教程ipad可以做网站吗
  • 济南网站建设模板python网站开发用什么软件
  • 北京品牌网站建设阿里巴巴logo图片
  • 做宣传册从哪个网站找素材中文在线っと好きだっ
  • 国际物流东莞网站建设wap是什么意思的缩写
  • 传奇官网百度seo营销网站
  • 如何在导航网站上做链接上海建筑设计研究院
  • 微信营销软件网站建设推广链接
  • 美的集团网站建设方案书广汉做网站
  • 个人博客网站实验报告商标购买网站
  • 2020给个免费网站好人有好报做购物微信网站
  • 做淘宝客网站挣钱济南百度竞价代运营
  • 国外网站404错误页网站地址搜索
  • 做 暧视频在线观看网站北京安卓app开发公司