繁体   English   中英

如何在Three.js中更改几何的基本参数(例如,半径,顶点数等)

[英]How do I change the basic parameters of a Geometry in Three.js (for example, radius, number of vertices, etc.)

我创建半径为3的四面体

   // create a tetrahedron
   var tetGeometry = new THREE.TetrahedronGeometry(3);
   var tetMaterial = new THREE.MeshLambertMaterial(
        {color: 0x20f020, transparent:true, opacity:0.6});
   tet = new THREE.Mesh(tetGeometry, tetMaterial);
   tet.name='tet';
   tet.castShadow = true;

后来,我希望四面体生长:

   // change hedron
   scene.getObjectByName('tet').radius = control.hedronRadius;

那不行

   // change vertices
   scene.getObjectByName('tet').detail = control.hedronVertices;

那也不行。

   scene.getObjectByName('tet').verticesNeedUpdate;

这没有帮助。

因此,如何更改四面体(或任何几何体)的半径以及如何更改顶点。

在文档中,我看到了对以下内容的引用:

  • 几何
    • 。动态
    • 。变形
    • .verticesNeedUpdate
    • 。规模

并且还涉及用于对几何图形进行动画处理的骨骼和骨骼以及蒙皮网格。

一般而言,如何更改几何的这些方面?
那么,增大四面体的半径或更改顶点数量以显示其变为不同数量的多面体的最合理,建议的方法是什么?

要更改几何形状,您需要使用:

morphTargets: true

正如您在jsfiddle中提到的,我已经准备了使用四面体的示例 使用滑块更改几何。

要制作一些自定义顶点并通过面孔“填充”它们,您需要从数学中了解很多东西,例如; 点,向量等

我在jsfiddle中完成了2个简单的平面对象,即三角形和正方形

希望您能轻松理解它的总体工作原理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM