소스 검색

Editor: Simplified Helpers code.

Mr.doob 11 년 전
부모
커밋
8b01ca5b03
1개의 변경된 파일20개의 추가작업 그리고 57개의 파일을 삭제
  1. 20 57
      editor/js/Editor.js

+ 20 - 57
editor/js/Editor.js

@@ -175,82 +175,45 @@ Editor.prototype = {
 
 		return function ( object ) {
 
-			if ( object instanceof THREE.Camera ) {
-
-				var picker = new THREE.Mesh( geometry, material );
-				picker.name = 'picker';
-				picker.userData.object = object;
-				picker.visible = false;
+			var helper;
 
-				var helper = new THREE.CameraHelper( object, 10 );
-				helper.add( picker );
-			
-				this.sceneHelpers.add( helper );
-				this.helpers[ object.id ] = helper;
+			if ( object instanceof THREE.Camera ) {
 
-				this.signals.helperAdded.dispatch( helper );
+				helper = new THREE.CameraHelper( object, 10 );
 
 			} else if ( object instanceof THREE.PointLight ) {
 
-				var picker = new THREE.Mesh( geometry, material );
-				picker.name = 'picker';
-				picker.userData.object = object;
-				picker.visible = false;
-
-				var helper = new THREE.PointLightHelper( object, 10 );
-				helper.add( picker );
-			
-				this.sceneHelpers.add( helper );
-				this.helpers[ object.id ] = helper;
-
-				this.signals.helperAdded.dispatch( helper );
+				helper = new THREE.PointLightHelper( object, 10 );
 
 			} else if ( object instanceof THREE.DirectionalLight ) {
 
-				var picker = new THREE.Mesh( geometry, material );
-				picker.name = 'picker';
-				picker.userData.object = object;
-				picker.visible = false;
-
-				var helper = new THREE.DirectionalLightHelper( object, 20 );
-				helper.add( picker );
-
-				this.sceneHelpers.add( helper );
-				this.helpers[ object.id ] = helper;
-
-				this.signals.helperAdded.dispatch( helper );
+				helper = new THREE.DirectionalLightHelper( object, 20 );
 
 			} else if ( object instanceof THREE.SpotLight ) {
 
-				var picker = new THREE.Mesh( geometry, material );
-				picker.name = 'picker';
-				picker.userData.object = object;
-				picker.visible = false;
-
-				var helper = new THREE.SpotLightHelper( object, 10 );
-				helper.add( picker );
+				helper = new THREE.SpotLightHelper( object, 10 );
 
-				this.sceneHelpers.add( helper );
-				this.helpers[ object.id ] = helper;
+			} else if ( object instanceof THREE.HemisphereLight ) {
 
-				this.signals.helperAdded.dispatch( helper );
+				helper = new THREE.HemisphereLightHelper( object, 10 );
 
-			} else if ( object instanceof THREE.HemisphereLight ) {
+			} else {
 
-				var picker = new THREE.Mesh( geometry, material );
-				picker.name = 'picker';
-				picker.userData.object = object;
-				picker.visible = false;
+				// no helper for this object type
+				return;
 
-				var helper = new THREE.HemisphereLightHelper( object, 10 );
-				helper.add( picker );
+			}
 
-				this.sceneHelpers.add( helper );
-				this.helpers[ object.id ] = helper;
+			var picker = new THREE.Mesh( geometry, material );
+			picker.name = 'picker';
+			picker.userData.object = object;
+			picker.visible = false;
+			helper.add( picker );
 
-				this.signals.helperAdded.dispatch( helper );
+			this.sceneHelpers.add( helper );
+			this.helpers[ object.id ] = helper;
 
-			}
+			this.signals.helperAdded.dispatch( helper );
 
 		};