Browse Source

Editor: Added info.

Mr.doob 12 years ago
parent
commit
4b1f070ffd
2 changed files with 39 additions and 5 deletions
  1. 2 3
      editor/js/UI.js
  2. 37 2
      editor/js/ui/Viewport.js

+ 2 - 3
editor/js/UI.js

@@ -35,9 +35,8 @@ UI.Element.prototype = {
 // properties
 
 var properties = [ 'position', 'left', 'top', 'right', 'bottom', 'width', 'height', 'border', 'borderLeft',
-'borderTop', 'borderRight', 'borderBottom', 'borderColor', 'display', 'overflow', 'margin', 'marginLeft', 'marginTop', 'marginRight',
-'marginBottom', 'padding', 'paddingLeft', 'paddingTop', 'paddingRight', 'paddingBottom', 'color',
-'backgroundColor', 'fontSize', 'fontWeight', 'textTransform', 'cursor' ];
+'borderTop', 'borderRight', 'borderBottom', 'borderColor', 'display', 'overflow', 'margin', 'marginLeft', 'marginTop', 'marginRight', 'marginBottom', 'padding', 'paddingLeft', 'paddingTop', 'paddingRight', 'paddingBottom', 'color',
+'backgroundColor', 'opacity', 'fontSize', 'fontWeight', 'textTransform', 'cursor' ];
 
 properties.forEach( function ( property ) {
 

+ 37 - 2
editor/js/ui/Viewport.js

@@ -4,6 +4,14 @@ var Viewport = function ( signals ) {
 	container.setPosition( 'absolute' );
 	container.setBackgroundColor( '#aaa' );
 
+	var info = new UI.Text();
+	info.setPosition( 'absolute' );
+	info.setRight( '5px' );
+	info.setBottom( '5px' );
+	info.setFontSize( '12px' );
+	info.setColor( '#ffffff' );
+	container.add( info );
+
 	var clearColor = 0xAAAAAA;
 	var objects = [];
 
@@ -312,6 +320,8 @@ var Viewport = function ( signals ) {
 
 		}
 
+		updateInfo();
+
 		signals.sceneChanged.dispatch( scene );
 		signals.objectSelected.dispatch( object );
 
@@ -362,10 +372,11 @@ var Viewport = function ( signals ) {
 
 		}
 
-		signals.sceneChanged.dispatch( scene );
-
+		updateInfo();
 		render();
 
+		signals.sceneChanged.dispatch( scene );
+
 	} );
 
 	signals.cloneSelectedObject.add( function () {
@@ -425,6 +436,8 @@ var Viewport = function ( signals ) {
 
 			selected.parent.remove( selected );
 
+			updateInfo();
+
 		}
 
 		signals.sceneChanged.dispatch( scene );
@@ -520,6 +533,28 @@ var Viewport = function ( signals ) {
 
 	//
 
+	function updateInfo() {
+
+		var objects = 0;
+		var vertices = 0;
+		var faces = 0;
+
+		scene.traverse( function ( object ) {
+
+			if ( object instanceof THREE.Mesh ) {
+
+				objects ++;
+				vertices += object.geometry.vertices.length;
+				faces += object.geometry.faces.length;
+
+			}
+
+		} );
+
+		info.setValue( 'objects: ' + objects + ', vertices: ' + vertices + ', faces: ' + faces );
+
+	}
+
 	function updateMaterials( root ) {
 
 		root.traverse( function ( node ) {