1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- Sidebar.Geometry.BufferGeometry = function ( signals ) {
- var container = new UI.Panel();
- // vertices
- var verticesRow = new UI.Panel();
- var vertices = new UI.Text().setColor( '#444' ).setFontSize( '12px' );
- verticesRow.add( new UI.Text( 'Vertices' ).setWidth( '90px' ) );
- verticesRow.add( vertices );
- container.add( verticesRow );
- // faces
- var facesRow = new UI.Panel();
- var faces = new UI.Text().setColor( '#444' ).setFontSize( '12px' );
- facesRow.add( new UI.Text( 'Faces' ).setWidth( '90px' ) );
- facesRow.add( faces );
- container.add( facesRow );
- //
- var update = function ( object ) {
- if ( object === null ) return;
- var geometry = object.geometry;
- if ( geometry instanceof THREE.BufferGeometry ) {
- container.setDisplay( 'block' );
- vertices.setValue( ( geometry.attributes.position.array.length / 3 ).format() );
- if ( geometry.attributes.index !== undefined ) {
- faces.setValue( ( geometry.attributes.index.array.length / 3 ).format() );
- } else {
- faces.setValue( ( geometry.attributes.position.array.length / 9 ).format() );
- }
- } else {
- container.setDisplay( 'none' );
- }
- };
- signals.objectSelected.add( update );
- signals.geometryChanged.add( update );
- return container;
- }
|