2017-06-21 178 views
0

我正在开发一个使用3D建筑物作为模型的Web应用程序。我想创建一个按钮来放置相机,使模型处于合适的位置,但是当我手动旋转相机时,鼠标控件会再次将其重置。当我使用orbitcontrols时,相机旋转丢失three.js

Sample here:Link

如果我能//controls.update()旋转不起作用。在禁用//controls.update()的情况下,相机可以很好地旋转,但是当我使用鼠标时,相机会重置。

¿我该怎么办?谢谢!

回答

0

你不应该直接改变相机的旋转,而应该改变位置+目标。

当您调用controls.update()时,将根据相机的位置(相机的位置)和控件的目标(焦点位置)计算相机的旋转角度。

例如,你可以这样做:

controls.target.set(0,0,1); 
camera.position.set(-0.041, 1.9, -1.21); 
controls.update(); 
+0

谢谢user2971994 我会尝试,并找到有关camera.position.set更多的信息,了解它是如何工作 – Kathyer