2 * @author mrdoob / http://mrdoob.com/
5 Sidebar.Geometry.TorusKnotGeometry = function ( editor, object ) {
7 var signals = editor.signals;
9 var container = new UI.Row();
11 var geometry = object.geometry;
12 var parameters = geometry.parameters;
16 var radiusRow = new UI.Row();
17 var radius = new UI.Number( parameters.radius ).onChange( update );
19 radiusRow.add( new UI.Text( 'Radius' ).setWidth( '90px' ) );
20 radiusRow.add( radius );
22 container.add( radiusRow );
26 var tubeRow = new UI.Row();
27 var tube = new UI.Number( parameters.tube ).onChange( update );
29 tubeRow.add( new UI.Text( 'Tube' ).setWidth( '90px' ) );
32 container.add( tubeRow );
36 var tubularSegmentsRow = new UI.Row();
37 var tubularSegments = new UI.Integer( parameters.tubularSegments ).setRange( 1, Infinity ).onChange( update );
39 tubularSegmentsRow.add( new UI.Text( 'Tubular segments' ).setWidth( '90px' ) );
40 tubularSegmentsRow.add( tubularSegments );
42 container.add( tubularSegmentsRow );
46 var radialSegmentsRow = new UI.Row();
47 var radialSegments = new UI.Integer( parameters.radialSegments ).setRange( 1, Infinity ).onChange( update );
49 radialSegmentsRow.add( new UI.Text( 'Radial segments' ).setWidth( '90px' ) );
50 radialSegmentsRow.add( radialSegments );
52 container.add( radialSegmentsRow );
56 var pRow = new UI.Row();
57 var p = new UI.Number( parameters.p ).onChange( update );
59 pRow.add( new UI.Text( 'P' ).setWidth( '90px' ) );
62 container.add( pRow );
66 var qRow = new UI.Row();
67 var q = new UI.Number( parameters.q ).onChange( update );
69 pRow.add( new UI.Text( 'Q' ).setWidth( '90px' ) );
72 container.add( qRow );
79 editor.execute( new SetGeometryCommand( object, new THREE[ geometry.type ](
82 tubularSegments.getValue(),
83 radialSegments.getValue(),
94 Sidebar.Geometry.TorusKnotBufferGeometry = Sidebar.Geometry.TorusKnotGeometry;