我想在具有OrbiteControls的PerspectiveCamera上将.enableRotate
和.enablePan
设置为 false
我已经尝试设置它们,因为它不起作用,我发现可以使用以下方法:
controls.maxPolarAngle = 0;
controls.maxAzimuthAngle = - Math.PI;
但是因为.enablePan
并没有类似的东西,所以我被困在那里。也许我的使用方式有问题?
如果您更喜欢使用它或尝试使用它,这里是数字笔:https://codepen.io/greg_o/pen/jdwZYZ
我想这是您感兴趣的代码部分:
function init() {
camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 1, 1000);
camera.position.z = 68;
controls = new THREE.OrbitControls(camera);
controls.maxDistance = 300;
controls.minDistance = 30;
controls.enableRotate = false;
controls.maxPolarAngle = 0;
controls.maxAzimuthAngle = - Math.PI;
controls.enablePan = false;
}
只想说这支笔最初是来自Nikita Skargovskii
答案 0 :(得分:2)
使用three.js
和OrbitControls
的最新版本似乎可以解决此问题:https://codepen.io/anon/pen/exRQYo
您使用的发行版84早于两年之前。始终使用three.js
的最新版本,并确保示例目录中的文件(如OrbitControls
)与您的three.js
文件的版本匹配。