如何使用three.js围绕其轴旋转网格?

时间:2019-05-05 05:12:29

标签: javascript three.js 3d csg

Three.js初学者,我正在尝试创建一个类似3d环的结构,该结构由单独的网格组成,我使用CSG将它们结合在一起。我设法将每个单独的网格沿一个圆放置。 我现在如何旋转它们,以使每个对象的长边朝向圆心(我相信这是围绕对象的y轴旋转的)?当前,网格都面向相同的方向,what I have so far

但是,当我尝试将其中一个绕y轴旋转时,它没有像我预期的那样向内旋转。而是使用it rotated like this。好像它不是从以前的位置的中心旋转。

我尝试了以下代码来获得此结果:

mesh.position.x = 0;
mesh.position.y = 0;
mesh.position.z = 0;
mesh.updateMatrixWorld( true );
// Also tried "mesh.rotation.y = ((2 * Math.PI) / 10) * k;" instead of the following line:
mesh.rotateY(((2 * Math.PI) / 10) * k);
mesh.position.x = 25 * Math.cos((2 * k * Math.PI) / 10);
mesh.position.y = 0;
mesh.position.z = 25 * Math.sin((2 * k * Math.PI) / 10);
mesh.updateMatrixWorld( true );

提前谢谢! (另外请注意,如果有人了解为什么网格的某些部分随机变得不存在/透明,那将非常有帮助)。

编辑:JSFiddle Link

0 个答案:

没有答案