0

我有一个移动和旋转的网格,我想向父 Object3D 添加一个绝对定位/旋转的子对象,并且当父元素更改位置或旋转时它应该保持其位置。

parent_ = new THREE.Object3D()
parent_.add( new THREE.Mesh(new THREE.CubeGeometry(2, 20, 2), new THREE.MeshNormalMaterial()))
child_ = new THREE.Mesh(new THREE.CubeGeometry(30, 3, 30), new THREE.MeshNormalMaterial())
child_.position.set(1,10,1)
parent_.add(child_)
scene.add(parent_);

小提琴

如何从绝对定位/旋转的对象计算相对于父 object3d 的位置/旋转,使其保持绝对位置?

4

1 回答 1

1

为了在 Object3D 的局部坐标系和世界坐标系之间进行转换,有方法worldToLocallocalToWorld,请参见源代码:

http://github.com/mrdoob/three.js/blob/master/src/core/Object3D.js

详情。

于 2013-03-23T01:12:50.767 回答