我是threejs的新手。在three.js场景中动态获取对象位置
我的场景中有一个对象,我们可以在所有XYZ轴上使用TransformControls.js在场景中移动。
当我使用鼠标单击并拖动任何轴(即X,Y,Z)在场景内翻译/移动对象时。我想获取场景内该特定对象的更新的X,Y,Z坐标坐标。
我用mesh.position.set(0, 0, 0);
设置对象的位置之前渲染场景,但我无法找到如何让一个场景内的物体的动态位置。
最终,我想在转换操作后保存更新后的位置坐标,并在用户返回页面或进行页面刷新时,使用更新位置坐标处的对象坐标重新呈现场景。
任何指针都会非常有帮助。
谢谢
'mesh.position'是一个'Vector3',它是网格的局部位置。它看起来像TransformControls更新这个向量,所以你应该能够在转换完成后从'mesh.position'获得新的位置。这是你想要做什么,或者'mesh.position'在转换之后没有被更新? – TheJim01
是的,这正是我想要做的。当我调用'THREE.TransformControls(camera,renderer.domElement)'后调用'console.log(mesh.position.x +','+ mesh.position.y +','+ mesh.position.z)''我得到的输出为'0,0,0'因此,在我移动场景内的对象后,mesh.position没有得到更新。 –
还有一个问题:您正在使用哪个版本的'three.js'? – TheJim01