Three.js如何为每个时钟30deg绘制多个球体

时间:2014-04-20 05:33:07

标签: rotation three.js html5-canvas

晚上好,

我正在使用EaselJS,现在我正试图弄清楚如何使用ThreeJS。

在EaselJS中,您可以在旋转之前设置画布上元素的旋转点,但是在ThreeJS中似乎不可能做同样的事情。

那么,我怎么能画一个30秒的球形来形成一个圆圈,就像一个时钟。

12岁时的球体,1点钟,2点钟,3点钟......

我可以旋转我的球体(这是无用的)并定位它,但我不知道如何计算坐标。

无法等待你们其中一人的回复, 杰

1 个答案:

答案 0 :(得分:1)

您需要翻译然后旋转每个球体。 所以用时钟的半径来转换每个圆圈,

circle.translateZ(10);

然后通过围绕时钟中心旋转将其旋转到位。在这种情况下围绕y轴,

circle.rotateOnAxis(new THREE.Vector3(0.0, 1.0, 0.0), THREE.Math.degToRad(30*i));

为每个圈子做这件事。 两个库都基于具有矩阵旋转和平移的层次结构场景。但一个是3D。 API也有所不同。