Sidebar.Geometry.Geometry.js 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /**
  2. * @author mrdoob / http://mrdoob.com/
  3. */
  4. Sidebar.Geometry.Geometry = function ( editor ) {
  5. var signals = editor.signals;
  6. var container = new UI.Row();
  7. // vertices
  8. var verticesRow = new UI.Row();
  9. var vertices = new UI.Text();
  10. verticesRow.add( new UI.Text( 'Vertices' ).setWidth( '90px' ) );
  11. verticesRow.add( vertices );
  12. container.add( verticesRow );
  13. // faces
  14. var facesRow = new UI.Row();
  15. var faces = new UI.Text();
  16. facesRow.add( new UI.Text( 'Faces' ).setWidth( '90px' ) );
  17. facesRow.add( faces );
  18. container.add( facesRow );
  19. //
  20. function update( object ) {
  21. if ( object === null ) return; // objectSelected.dispatch( null )
  22. if ( object === undefined ) return;
  23. var geometry = object.geometry;
  24. if ( geometry instanceof THREE.Geometry ) {
  25. container.setDisplay( 'block' );
  26. vertices.setValue( ( geometry.vertices.length ).format() );
  27. faces.setValue( ( geometry.faces.length ).format() );
  28. } else {
  29. container.setDisplay( 'none' );
  30. }
  31. }
  32. signals.objectSelected.add( update );
  33. signals.geometryChanged.add( update );
  34. return container;
  35. };