OrbitControls - можно ли включить / отключить динамическое масштабирование?

Я бегу три.js r69 со связанными OrbitControls.js. У меня есть простая сцена с несколькими объектами, которые можно выбрать. Я хотел бы иметь возможность отключить масштабирование во время выбора объекта и повторно включить его, как только я очистил выбор.

Я работаю над временным решением, но оно включает в себя редактирование OrbitControls.код js. Это может сделать его действительно раздражает, чтобы перейти на новую версию Трех.js, особенно если OrbitControls когда-либо измененный.

есть ли в настоящее время способ включить/отключить определенные функции (например, масштабирование, панорамирование или орбиту) на лету, независимо друг от друга?

2 ответов


просто:

controls = new THREE.OrbitControls( camera );

// to disable zoom
controls.enableZoom = false;

// to disable rotation
controls.enableRotate = false;

// to disable pan
controls.enablePan = false;

Если вы редактируете источник вы, должно быть, видели noZoom и noPan.

и этот пост показывает, как ограничить вращение.

Они не отвечают вашим потребностям?