Skip to content

Commit 71fd1c3

Browse files
committed
Removed stopPropagation from TransformControls.
Added OrbitControls to TransformControls example.
1 parent b22db83 commit 71fd1c3

File tree

3 files changed

+18
-11
lines changed

3 files changed

+18
-11
lines changed

examples/js/controls/TransformControls.js

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -104,11 +104,9 @@ THREE.TransformControls = function ( camera, domElement ) {
104104
domElement.addEventListener( "touchstart", onPointerDown, false );
105105
domElement.addEventListener( "mousemove", onPointerHover, false );
106106
domElement.addEventListener( "touchmove", onPointerHover, false );
107-
domElement.addEventListener( "mousemove", onPointerMove, false );
107+
document.addEventListener( "mousemove", onPointerMove, false );
108108
domElement.addEventListener( "touchmove", onPointerMove, false );
109-
domElement.addEventListener( "mouseup", onPointerUp, false );
110-
domElement.addEventListener( "mouseleave", onPointerUp, false );
111-
domElement.addEventListener( "mouseout", onPointerUp, false );
109+
document.addEventListener( "mouseup", onPointerUp, false );
112110
domElement.addEventListener( "touchend", onPointerUp, false );
113111
domElement.addEventListener( "touchcancel", onPointerUp, false );
114112
domElement.addEventListener( "touchleave", onPointerUp, false );
@@ -122,11 +120,9 @@ THREE.TransformControls = function ( camera, domElement ) {
122120
domElement.removeEventListener( "touchstart", onPointerDown );
123121
domElement.removeEventListener( "mousemove", onPointerHover );
124122
domElement.removeEventListener( "touchmove", onPointerHover );
125-
domElement.removeEventListener( "mousemove", onPointerMove );
123+
document.removeEventListener( "mousemove", onPointerMove );
126124
domElement.removeEventListener( "touchmove", onPointerMove );
127-
domElement.removeEventListener( "mouseup", onPointerUp );
128-
domElement.removeEventListener( "mouseleave", onPointerUp );
129-
domElement.removeEventListener( "mouseout", onPointerUp );
125+
document.removeEventListener( "mouseup", onPointerUp );
130126
domElement.removeEventListener( "touchend", onPointerUp );
131127
domElement.removeEventListener( "touchcancel", onPointerUp );
132128
domElement.removeEventListener( "touchleave", onPointerUp );
@@ -172,6 +168,7 @@ THREE.TransformControls = function ( camera, domElement ) {
172168
_plane[ propName ] = value;
173169
_gizmo[ propName ] = value;
174170

171+
scope.dispatchEvent( { type: propName + "-changed", value: value } );
175172
scope.dispatchEvent( changeEvent );
176173

177174
}
@@ -539,7 +536,6 @@ THREE.TransformControls = function ( camera, domElement ) {
539536
if ( !scope.enabled ) return;
540537

541538
event.preventDefault();
542-
event.stopPropagation();
543539

544540
scope.pointerHover( getPointer( event ) );
545541
scope.pointerDown( getPointer( event ) );
@@ -551,7 +547,6 @@ THREE.TransformControls = function ( camera, domElement ) {
551547
if ( !scope.enabled ) return;
552548

553549
event.preventDefault();
554-
event.stopPropagation();
555550

556551
scope.pointerMove( getPointer( event ) );
557552

examples/misc_controls_transform.html

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,12 @@
4242
</div>
4343

4444
<script src="../build/three.js"></script>
45+
<script src="js/controls/OrbitControls.js"></script>
4546
<script src="js/controls/TransformControls.js"></script>
4647

4748
<script>
4849

49-
var camera, scene, renderer, control;
50+
var camera, scene, renderer, control, orbit;
5051

5152
init();
5253
render();
@@ -77,9 +78,17 @@
7778
var geometry = new THREE.BoxBufferGeometry( 200, 200, 200 );
7879
var material = new THREE.MeshLambertMaterial( { map: texture } );
7980

81+
orbit = new THREE.OrbitControls(camera, renderer.domElement);
82+
orbit.update();
83+
orbit.addEventListener( 'change', render );
84+
8085
control = new THREE.TransformControls( camera, renderer.domElement );
8186
control.addEventListener( 'change', render );
8287

88+
control.addEventListener( 'dragging-changed', function ( event ) {
89+
orbit.enabled = !event.value;
90+
} );
91+
8392
var mesh = new THREE.Mesh( geometry, material );
8493
scene.add( mesh );
8594

examples/webgl_geometry_spline_editor.html

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,9 @@
163163

164164
transformControl = new THREE.TransformControls( camera, renderer.domElement );
165165
transformControl.addEventListener( 'change', render );
166+
transformControl.addEventListener( 'dragging-changed', function ( event ) {
167+
controls.enabled = !event.value
168+
} );
166169
scene.add( transformControl );
167170

168171
// Hiding transform situation is a little in a mess :()

0 commit comments

Comments
 (0)