OrbitControls - 我可以动态启用/禁用缩放吗?

问题描述 投票:0回答:2

我正在运行 Three.js r69 和捆绑的 OrbitControls.js。我有一个简单的场景,其中有几个可选择的对象。我希望能够在选择对象时禁用缩放,并在清除选择后重新启用缩放。

我正在研究一个临时解决方案,但它涉及编辑 OrbitControls.js 代码。这可能会让升级到 Three.js 新版本变得非常烦人,尤其是在 OrbitControls 发生更改的情况下。

目前是否有一种方法可以相互独立地即时启用/禁用某些功能(例如缩放、平移或轨道)?

three.js
2个回答
47
投票

很简单:

const controls = new THREE.OrbitControls( camera );
    
// to disable zoom
controls.enableZoom = false;
        
// to disable rotation
controls.enableRotate = false;
    
// to disable pan
controls.enablePan = false;

1
投票

如果您正在编辑,您一定见过 noZoom 和 noPan。

并且这篇文章展示了如何限制旋转。

这些还不能满足您的需求吗?

© www.soinside.com 2019 - 2024. All rights reserved.