mirror of
https://github.com/Doodle3D/Doodle3D-Slicer.git
synced 2024-12-25 20:33:50 +01:00
99 lines
2.7 KiB
HTML
Executable File
99 lines
2.7 KiB
HTML
Executable File
<!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>[property:Object parameters]</h3>
|
|
<div>
|
|
An object with all of the parameters that were used to generate the geometry.
|
|
</div>
|
|
|
|
<h3>[property:Array tangents]</h3>
|
|
<div>
|
|
An array of [page:Vector3] tangents
|
|
</div>
|
|
|
|
<h3>[property:Array normals]</h3>
|
|
<div>
|
|
An array of [page:Vector3] normals
|
|
</div>
|
|
|
|
<h3>[property: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>
|