Doodle3D-Slicer/three.js-master/editor/js/Sidebar.Geometry.PlaneGeometry.js

74 lines
1.6 KiB
JavaScript
Raw Normal View History

2015-06-12 15:58:26 +02:00
/**
* @author mrdoob / http://mrdoob.com/
*/
Sidebar.Geometry.PlaneGeometry = function ( signals, object ) {
var container = new UI.Panel();
var parameters = object.geometry.parameters;
// width
var widthRow = new UI.Panel();
var width = new UI.Number( parameters.width ).onChange( update );
widthRow.add( new UI.Text( 'Width' ).setWidth( '90px' ) );
widthRow.add( width );
container.add( widthRow );
// height
var heightRow = new UI.Panel();
var height = new UI.Number( parameters.height ).onChange( update );
heightRow.add( new UI.Text( 'Height' ).setWidth( '90px' ) );
heightRow.add( height );
container.add( heightRow );
// widthSegments
var widthSegmentsRow = new UI.Panel();
var widthSegments = new UI.Integer( parameters.widthSegments ).setRange( 1, Infinity ).onChange( update );
widthSegmentsRow.add( new UI.Text( 'Width segments' ).setWidth( '90px' ) );
widthSegmentsRow.add( widthSegments );
container.add( widthSegmentsRow );
// heightSegments
var heightSegmentsRow = new UI.Panel();
var heightSegments = new UI.Integer( parameters.heightSegments ).setRange( 1, Infinity ).onChange( update );
heightSegmentsRow.add( new UI.Text( 'Height segments' ).setWidth( '90px' ) );
heightSegmentsRow.add( heightSegments );
container.add( heightSegmentsRow );
//
function update() {
object.geometry.dispose();
object.geometry = new THREE.PlaneGeometry(
width.getValue(),
height.getValue(),
widthSegments.getValue(),
heightSegments.getValue()
);
object.geometry.computeBoundingSphere();
signals.geometryChanged.dispatch( object );
}
return container;
}