ThreeJs OrbitControls: Как отключить панорамирование мыши, не отключая панорамирование клавиш?
Я пытаюсь запретить пользователям панорамирование с помощью мыши, но по-прежнему разрешено панорамирование с помощью клавиш. Если это использование controls.enablePan = false;
Я не могу использовать ключи для панорамирования. Однако, если я пытаюсь перепривязать кнопки мыши, это заставляет меня назначить кнопку мыши на Орбиту, Панорамирование и Масштаб. Как я могу запретить пользователям использовать панорамирование мыши, но при этом иметь возможность панорамирования клавишами? Я не хочу полностью отключать мышь, потому что мне нужно иметь возможность вращаться с правой кнопкой мыши.
3 ответа
Нет возможности отключить только панорамирование мыши. Вам нужно будет загрузить и изменить OrbitControls.js и закомментировать, удалить или изменить код, связанный с панорамированием с помощью мыши.
Например, эта строка
и эта строка
так далее...
Вы уже пробовали изменить свойство кнопок мыши ?
Что-то вроде того:
controls.mouseButtons = {
LEFT: THREE.MOUSE.ROTATE,
MIDDLE: THREE.MOUSE.DOLLY,
RIGHT: ''
}
Он решил аналогичную проблему, которая возникла у меня некоторое время назад.
Вы можете переназначить клавиши управления, фактически отключив их:
this.controls.keys = { LEFT: 0, RIGHT: 0, UP: 0, BOTTOM: 0 }