three.js PerspectiveCamera + orbitControl如何获得当前的“缩放”级别?

时间:2018-10-23 08:36:42

标签: javascript three.js zoom perspectivecamera

我尝试在Three.js场景中检测当前的缩放级别(或类似的东西)。  我的意思是通过鼠标滚轮操作应用的“缩放”(多莉) 例如:简单场景包含:PerspectiveCamera + orbitControl +对象

1:`<=测试在这里

controls = new THREE.OrbitControls( camera );
controls.dollyOut = function(){    }
controls.dollyIn = function(){    }

controls.addEventListener('change', renderlog); ....` 

TNX

1 个答案:

答案 0 :(得分:3)

PerspectiveCameraOrbitControls结合使用时,必须注意“缩放”的可变性不如正交摄影机。取而代之的是通过仅将相机靠近目标来跟踪“缩放”。

这意味着您可以通过计算目标与相机位置之间的距离来获得变焦距离。

var zoom = controls.target.distanceTo( controls.object.position )