Three.js按新方向操纵3D鼠标坐标

时间:2016-07-29 09:30:59

标签: javascript three.js mousemove

我在设置新鼠标位置时遇到问题。我有一个在空间中移动和旋转的对象,并跟随指针锁定光标的位置。 Targetposition是位于对象后面的Vector3。现在我想创建一个动画,通过平滑旋转对象来反向移动对象。所以我禁用了我的mouseListener并使用给定的Three.js函数旋转对象。但在我启用我的监听器之后,targetPosition会回到鼠标位置并使移动无效。所以现在我想在动画后为我的新Targetposition计算鼠标位置。我怎样才能做到这一点 ?

3D鼠标坐标的功能如下所示:

enter code here
   mouseY = Math.max(-85, Math.min(70, -mouseY));
   phi = THREE.Math.degToRad(90 + mouseY);
   theta = THREE.Math.degToRad(mouseX);

   targetPosition.x = object.position.x + 100 * Math.sin(phi) * Math.cos(theta);
   targetPosition.y = object.position.y + 100 * Math.cos(phi);
   targetPosition.z = object.position.z + 100 * Math.sin(phi) * Math.sin(theta);
   object.lookAt(targetPosition);

0 个答案:

没有答案