![](/img/trans.png)
[英]zooming camera in threeJS without trackball controls or other camera control library
[英]threeJS Trackball Controls camera rotation
对于基于图像的建模应用程序( vmtklab.orobix.com )的3D应用,我已经使用了一段时间。 对于相机旋转/平移/缩放,我使用TrackballControls.js。
controls = new THREE.TrackballControls( camera, renderer.domElement );
controls.dynamicDampingFactor = 0.5;
controls.target.set( pos.x, pos.y, pos.z );
我已经习惯了像vtk(paraview等)中那样进行摄像机运动,但是我找不到如何在threejs中复制这种行为。
请参阅: http : //jsfiddle.net/ugxbktLt/5/
基本上,如果我单击中间的画布,然后沿y轴移动鼠标,则相机将按预期旋转。 如果我在远离中心的点(例如,在立方体的右侧)上单击画布,则相机会沿两个方向旋转,而不仅仅是跟随鼠标移动。
我期望摄像机仅跟随鼠标移动产生的起点(mousedown)和终点之间的矢量旋转,而不考虑起点的位置。 似乎围绕一个球旋转。
有什么建议么? 最好的问候西蒙妮
修正:使用SymmetricTrackballControls.js,我们可以独立于鼠标在画布上的位置旋转相机,但仅考虑鼠标的移动。 https://github.com/mrdoob/three.js/pull/6096
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.