我有一个THREE.SphereGeometry。我想要做的是让用户指向它的给定部分,投射一个圆然后在用户输入上从球体中挤出一个圆柱体,圆柱体的半径和高度与用户输入的比例成正比是。我怎么能这样做?
答案 0 :(得分:0)
如果你不介意有一些冗余的三角形和看不见的物体交叉点,为什么不只是使用THREE.CylinderGeometry
向场景中添加一个新的网格,并将其着色以匹配球体(比尝试修改它更容易)球体几何)?您可以相对于Sphere的原点放置它,然后使用sphere.add(cylinder)
而不是scene.add(cyclinder)
,以便新的cyclinder网格始终相对于该球体保持放置。
要处理问题的“指向球体表面”部分,请查看THREE.js Raycaster
示例。使用raycaster确定他们指向的位置,然后从那里绘制。