[英]THREE.js How to calculate rotation position on a 3D circle?
如下图所示,我有一个带有简单立方体的THREE.Scene
。 附着在立方体上的是CANNON.Body
for Physics(以绿色线框表示)。
CANNON.Body
从立方体偏移了几个单位。 对于旋转,此偏移将为radius 。
当我旋转立方体时,我希望CANNON.Body
根据角度和半径围绕立方体旋转。 上的图像的右手侧,我旋转具有45度的角度的立方体(I也有可用弧度)。 但是, CANNON.Body
不会绕立方体旋转,而只能绕其自身的中心旋转。 我需要它围绕所有轴x , y和z 绕立方体旋转。
THREE.js
是否有内置函数,或者我应该THREE.js
使用自己的数学方程式? 如果是这样,那会是什么?
谢谢!
PS我已经看过纯THREE.js
场景的解决方案,在该场景中可以转换几何图形以操纵枢轴点。 由于我的CANNON.Body
没有几何体,因此这是不可能的。
我从未使用过cannonjs,但是是否可以仅在Three.Group中添加Cube和Rigid Body?
喜欢
var rigidBody = new CANNON.Body(); // whatever it is for cannon
var model = new THREE.Group();
// your model goes here
model.add(new THREE.Mesh(
new THREE.BoxGeometry(1,1,1),
new THREE.MeshStandardMaterial()
));
model.add(rigidBody);
scene.add(model);
这样,如果旋转父元素模型 ,则刚体应以相同的方式更新。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.