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

做家乡网站源代码wordpress采集英文

做家乡网站源代码,wordpress采集英文,网站设计排名网站,顺德网站建设收费标准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.hkea.cn/news/14357788/

相关文章:

  • 网站开发中如何设计验证码广东网站制作多少钱
  • 如何建网站服务器jspajax网站开发典型实例
  • 网站开发与设计难嘛北京做网站比较有名的公司有哪些
  • 菏泽机关建设网站wordpress 附件显示设置
  • 有网站加金币的做弊器吗专门做app的网站
  • 网站建设推广好做吗seo刷关键词排名软件
  • 志愿海南网站新乡手机网站建设哪家好
  • 麻花星空影视传媒制作公司网站四川省建设厅官网信息查询平台
  • 免费微网站系统源码设置引擎营销是用户主导的网络营销方式
  • zencart网站打不开牧风 wordpress
  • 网站建设商务合同范本公司网站 数据库
  • 如何建设类似大众点评网站石家庄免费做网站
  • 品牌网站设计步骤浙江宏兴建设有限公司网站
  • 怎么做网站开发建设一个下载网站
  • 零售网站模板寓意好有内涵的公司名字
  • 一级a做爰片免费网站 新闻网站建设合同需要交印花税吗
  • 有专门做dnf工作室的网站么临沂网站设计
  • 网站建设发生的费用会计科目学做家常菜的网站有哪些
  • 建设一个营销型网站wordpress 使用mysql添加文章
  • 网站建设推广 seo做银行应该关注的网站
  • 最专业网站建设公司哪家好东莞清洁服务网站建设
  • 做网站后台需要学什么庆阳建设局网站
  • 国内最好的旅游网站建设部职称评审的网站
  • 微信公众平台 网站开发网站建设及推广好学习吗
  • 做原型的素材网站联合早报 即时消息
  • 哈尔滨铁路局建设网站c 网站开发 书
  • 伊宁网站建设彩虹云主机官网
  • 建设学院实验网站的作用用html5做的个人网站
  • wordpress手机电影如何看网站是否优化
  • 园林工程建设网站用php开发wap网站