2014-12-10 10 views
6

Ich starte Three.js r69 mit dem gebündelten OrbitControls.js. Ich habe eine einfache Szene mit ein paar auswählbaren Objekten. Ich möchte das Zoomen deaktivieren können, während ein Objekt ausgewählt ist, und es wieder aktivieren, sobald ich die Auswahl aufgehoben habe.OrbitControls - Kann ich das Zoomen dynamisch aktivieren/deaktivieren?

Ich arbeite an einer temporären Lösung, aber es beinhaltet die Bearbeitung der OrbitControls.js-Code. Dies könnte das Aktualisieren auf eine neue Version von Three.js sehr ärgerlich machen, besonders wenn OrbitControls jemals geändert wird.

Gibt es derzeit eine Möglichkeit, bestimmte Funktionen (z. B. Zoomen, Schwenken oder Orbitieren) unabhängig voneinander zu aktivieren/deaktivieren?

Antwort

9

ist einfach:

controls = new THREE.OrbitControls(camera); 

// to disable zoom 
controls.enableZoom = false; 

// to disable rotation 
controls.enableRotate = false; 

// to disable pan 
controls.enablePan = false; 
+1

Ja. Das habe ich wenige Minuten nach dem Stellen der Frage herausgefunden. Me.dumb + = 5; – Justin

+1

diese 'no' Methoden scheinen veraltet zu sein. – 8protons

+1

8protons, hast du recht! Ich aktualisiere meine Antwort – meirm

1

Wenn Sie mit der Bearbeitung der source gesehen noZoom und noPan haben müssen.

Und this post zeigt, wie die Rotation eingeschränkt wird.

Entsprechen diese nicht Ihren Anforderungen?

Verwandte Themen