我试图禁用用户与鼠标平移,但仍可以用键pan。如果是使用controls.enablePan = false;
,我无法使用键来锅。但是,如果我试图重新启动鼠标按钮,它会迫使我将鼠标按钮分配给轨道,锅和缩放。如何禁用用户使用鼠标锅,但仍然可以用键锅?我不想完全禁用鼠标,因为我需要能够使用正确的鼠标按钮轨道绕。
没有选择仅禁用鼠标锅。您需要下载和修改OrbitControls.js,然后评论,删除或修改与鼠标相关的代码。
例如,此行
https://github.com/mrdoob/three.js/blob/bcd4bec926092609ce8af76a590b0b0f281ecf71019c2b/examples/js/js/js/js/controls/controls/controls/controls/orbitcontrols.js#l703
和这条线
https://github.com/mrdoob/three.js/blob/bcd4bec926092609ce8af76a590b0b0f281ecf71019c2b/examples/jsamples/js/js/controls/controls/controls/controls/orbitcontrols.js#l780
等...
您是否已经尝试更改鼠标按钮属性?
类似的东西:
controls.mouseButtons = {
LEFT: THREE.MOUSE.ROTATE,
MIDDLE: THREE.MOUSE.DOLLY,
RIGHT: ''
}
它解决了我前一段时间的类似问题。
您可以重新分配控制键,有效地禁用它们:
this.controls.keys = { LEFT: 0, RIGHT: 0, UP: 0, BOTTOM: 0 }