【发布时间】:2016-07-17 02:40:33
【问题描述】:
我在鼠标点击事件上为我的THREE.OrbitControls 设置了一个新目标,效果很好。但是在相机平移到新位置后,我失去了与鼠标的所有交互。
我正在用工作代码更新这个问题。
当我将相机 z 和目标 z 设置为相同的值时,我想我打破了控制。
损坏的代码在这里: http://www.kreativperspektiv.com/pb2/chartlock.html
工作代码在这里: http://www.kreativperspektiv.com/pb2/chartcorrect.html
panCam(500,200,4000,1000);
var xTarget=0;
var yTarget=0;
var zTarget=0;
var tweenDuration=0;
function panCam(xTarget,yTarget,zTarget,tweenDuration){
TWEEN.removeAll();
var camNewPosition= { x : xTarget, y : yTarget, z : zTarget};
var targetNewPos = {x : xTarget, y : yTarget, z : 0};
var camTween = new TWEEN.Tween(camera.position).to(camNewPosition, tweenDuration).easing(TWEEN.Easing.Quadratic.InOut).start();
var targetTween = new TWEEN.Tween(controls.target).to(targetNewPos, tweenDuration).easing(TWEEN.Easing.Quadratic.InOut).start();
}
【问题讨论】:
-
请输入代码?您应该始终在问题中包含所有相关代码。在the StackOverflow guidelines 中阅读更多相关信息。因此,您需要在代码中显示您是如何“设置目标”?
-
已更新代码。我很抱歉。我只是在寻找有关重置工作原理的一般指南。
标签: javascript three.js user-controls