javascript - three.js perspectiveCamera + orbitControl 如何获取当前 "zoom"级别?

标签 javascript three.js zooming perspectivecamera

我尝试检测 Three.js 场景中的当前缩放级别(或类似级别)。 我的意思是通过鼠标滚轮操作应用的“缩放”(小推车) 例如:简单场景包含:perspectiveCamera + orbitControl + object

1: `<= 测试在这里

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

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

腾讯

最佳答案

当您将 PerspectiveCameraOrbitControls 结合使用时,您必须意识到“缩放”不像正交相机那样是一个变量。相反,“缩放”是通过将相机靠近目标来完成的。

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

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

关于javascript - three.js perspectiveCamera + orbitControl 如何获取当前 "zoom"级别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52944642/

相关文章:

c# - 使用两种形式缩放

javascript - 有没有办法使用 PayPal REST API 设置定期付款?

javascript - 如何将超链接传递到 Carrot Search FoamTree?

Three.js DoubleSided Material 不会在平面参数几何体的两侧转换阴影

javascript - Three.js 着色器和窗口调整大小

iphone - 尽管浏览器缩放级别保持 div 大小(相对于屏幕)

android - 设置 MapFragment 缩放限制

javascript - 如何阻止多个重新渲染执行多个 api 调用 useEffect?

javascript - getFileAsync 太慢,导致appendChild 追加到数组中的最后一个div

javascript - 使用 OrbitControls 时锁定 x 轴旋转 - Three.js