1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="utf-8" />
- <script src="../../../list.js"></script>
- <script src="../../../page.js"></script>
- <link type="text/css" rel="stylesheet" href="../../../page.css" />
- </head>
- <body>
- [page:Geometry] →
-
- <h1>[name]</h1>
- <div class="desc">Creates a tube that extrudes along a 3d curve</div>
- <h2>Example</h2>
-
- <code>
- var CustomSinCurve = THREE.Curve.create(
- function ( scale ) { //custom curve constructor
- this.scale = (scale === undefined) ? 1 : scale;
- },
-
- function ( t ) { //getPoint: t is between 0-1
- var tx = t * 3 - 1.5,
- ty = Math.sin( 2 * Math.PI * t ),
- tz = 0;
-
- return new THREE.Vector3(tx, ty, tz).multiplyScalar(this.scale);
- }
- );
- var path = new CustomSinCurve( 10 );
- var geometry = new THREE.TubeGeometry(
- path, //path
- 20, //segments
- 2, //radius
- 8, //radiusSegments
- false //closed
- );
- </code>
- <h2>Constructor</h2>
- <h3>[name]([page:Curve path], [page:Integer segments], [page:Float radius], [page:Integer radiusSegments], [page:Boolean closed])</h3>
- <div>
- path — [page:Curve] - A path that inherits from the [page:Curve] base class<br />
- segments — [page:Integer] - The number of segments that make up the tube, default is 64<br />
- radius — [page:Float] - The radius of the tube, default is 1<br />
- radiusSegments — [page:Integer] - The number of segments that make up the cross-section, default is 8 <br />
- closed — [page:Float] Is the tube open or closed, default is false <br />
- </div>
- <h2>Properties</h2>
- <h3>.[page:Object parameters]</h3>
- <div>
- An object with all of the parameters that were used to generate the geometry.
- </div>
- <h3>.[page:Array tangents]</h3>
- <div>
- An array of [page:Vector3] tangents
- </div>
- <h3>.[page:Array normals]</h3>
- <div>
- An array of [page:Vector3] normals
- </div>
- <h3>.[page:Array binormals]</h3>
- <div>
- An array of [page:Vector3] binormals
- </div>
- <h2>Methods</h2>
-
- <h3>THREE.TubeGeometry.FrenetFrames([page:Curve path], [page:Integer segments], [page:Boolean closed])</h3>
- <div>
- path — A path that inherits from the [page:Curve] base class <br />
- segments — The number of segments that make up the tube <br />
- closed — Is the tube open or closed
- </div>
- <div>
- A static method that generates the Frenet Frames. This is internally run on any new TubeGeometry and then the
- generated tangents, normals, and binormals are exposed as properties on the TubeGeometry object.
- </div>
-
- <h2>Source</h2>
- [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
- </body>
- </html>
|