目前我正在创建一个反应机器人模型。这个机器人模型是 .glb 格式的,我正在使用 React Three Fiber 将每个网格对象粘贴到场景中(我从搅拌机中获得了网格的名称)。通过 zustand 和我的控制功能,我可以旋转一些关节以使机器人朝期望的方向移动。我的下一个目标是“提取”关节的每个世界坐标,并将它们显示在靠近控制按钮的叠加层中。我已经尝试过这样的事情:
<mesh
ref={joint_1}
onClick={(vectorEvent) => {
let vector = new THREE.Vector3();
vectorEvent.object.getWorldPosition(vector);
console.log(vector);
}}
></mesh>
但这仅在我单击想要坐标的关节时才有效。当我改变一些角度时,我想在我的控制功能上使用 onClick 事件(完成不同的功能,而不是 THREE 或 GLTF 的一部分)来做到这一点。有任何想法吗?