提交 6d21fc22 编写于 作者: M Mr.doob

r59

上级 1f069ee7
此差异已折叠。
此差异已折叠。
<!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:Object3D] &rarr;
<h1>[name]</h1>
<div class="desc">Abstract base class for cameras. This class should always be inherited when you build a new camera.</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
This constructor sets following properties to the correct type: matrixWorldInverse, projectionMatrix and projectionMatrixInverse.
</div>
<h2>Properties</h2>
<h3>.[page:Matrix4 matrixWorldInverse]</h3>
<div>This is the inverse of matrixWorld. MatrixWorld contains the Matrix which has the world transform of the Camera.</div>
<h3>.[page:Matrix4 projectionMatrix]</h3>
<div>This is the matrix which contains the projection.</div>
<h3>.[page:Matrix4 projectionMatrixInverse]</h3>
<div>This is the inverse of projectionMatrix.</div>
<h2>Methods</h2>
<h3>.lookAt( [page:Vector3 vector] )</h3>
<div>
vector — point to look at<br />
<br />
This makes the camera look at the vector position in the global space as long as the parent of this camera is the scene or at position (0,0,0).
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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:Object3D] &rarr; [page:Camera] &rarr;
<h1>[name]</h1>
<div class="desc">Camera with orthographic projection.</div>
<h2>Example</h2>
<code>var camera = new THREE.OrthographicCamera( width / - 2, width / 2, height / 2, height / - 2, 1, 1000 );
scene.add( camera );</code>
<h2>Constructor</h2>
<h3>[name]( [page:Float left], [page:Float right], [page:Float top], [page:Float bottom], [page:Float near], [page:Float far] )</h3>
<div>
left — Camera frustum left plane.<br />
right — Camera frustum right plane.<br />
top — Camera frustum top plane.<br />
bottom — Camera frustum bottom plane.<br />
near — Camera frustum near plane.<br />
far — Camera frustum far plane.
</div>
<h2>Properties</h2>
<h3>.[page:Float left]</h3>
<div>Camera frustum left plane.</div>
<h3>.[page:Float right]</h3>
<div>Camera frustum right plane.</div>
<h3>.[page:Float top]</h3>
<div>Camera frustum top plane.</div>
<h3>.[page:Float bottom]</h3>
<div>Camera frustum bottom plane.</div>
<h3>.[page:Float near]</h3>
<div>Camera frustum near plane.</div>
<h3>.[page:Float far]</h3>
<div>Camera frustum far plane.</div>
<h2>Methods</h2>
<h3>.updateProjectionMatrix()</h3>
<div>
Updates the camera projection matrix. Must be called after change of parameters.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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:Object3D] &rarr; [page:Camera] &rarr;
<h1>[name]</h1>
<div class="desc">Camera with perspective projection.</div>
<h2>Example</h2>
<code>var camera = new THREE.PerspectiveCamera( 45, width / height, 1, 1000 );
scene.add( camera );</code>
<h2>Constructor</h2>
<h3>[name]( [page:Float fov], [page:Float aspect], [page:Float near], [page:Float far] )</h3>
<div>
fov — Camera frustum vertical field of view.<br />
aspect — Camera frustum aspect ratio.<br />
near — Camera frustum near plane.<br />
far — Camera frustum far plane.
</div>
<h2>Properties</h2>
<h3>.[page:Float fov]</h3>
<div>Camera frustum vertical field of view, from bottom to top of view, in degrees.</div>
<h3>.[page:Float aspect]</h3>
<div>Camera frustum aspect ratio, window width divided by window height.</div>
<h3>.[page:Float near]</h3>
<div>Camera frustum near plane.</div>
<h3>.[page:Float far]</h3>
<div>Camera frustum far plane.</div>
<h2>Methods</h2>
<h3>.setLens( [page:Float focalLength], [page:Float frameSize] )</h3>
<div>
focalLength — focal length<br />
frameSize — frame size
</div>
<div>
Uses focal length (in mm) to estimate and set FOV 35mm (fullframe) camera is used if frame size is not specified.<br />
Formula based on [link:http://www.bobatkins.com/photography/technical/field_of_view.html]
</div>
<h3>.setViewOffset( [page:Float fullWidth], [page:Float fullHeight], [page:Float x], [page:Float y], [page:Float width], [page:Float height] )</h3>
<div>
fullWidth — full width of multiview setup<br />
fullHeight — full height of multiview setup<br />
x — horizontal offset of subcamera<br />
y — vertical offset of subcamera<br />
width — width of subcamera<br />
height — height of subcamera
</div>
<div>
Sets an offset in a larger frustum. This is useful for multi-window or multi-monitor/multi-machine setups.
</div>
<div>
For example, if you have 3x2 monitors and each monitor is 1920x1080 and the monitors are in grid like this:<br />
<pre>+---+---+---+
| A | B | C |
+---+---+---+
| D | E | F |
+---+---+---+</pre>
then for each monitor you would call it like this:<br />
<code>var w = 1920;
var h = 1080;
var fullWidth = w * 3;
var fullHeight = h * 2;
// A
camera.setViewOffset( fullWidth, fullHeight, w * 0, h * 0, w, h );
// B
camera.setViewOffset( fullWidth, fullHeight, w * 1, h * 0, w, h );
// C
camera.setViewOffset( fullWidth, fullHeight, w * 2, h * 0, w, h );
// D
camera.setViewOffset( fullWidth, fullHeight, w * 0, h * 1, w, h );
// E
camera.setViewOffset( fullWidth, fullHeight, w * 1, h * 1, w, h );
// F
camera.setViewOffset( fullWidth, fullHeight, w * 2, h * 1, w, h );
</code>
Note there is no reason monitors have to be the same size or in a grid.
</div>
<h3>.updateProjectionMatrix()</h3>
<div>
Updates the camera projection matrix. Must be called after change of parameters.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">
This is a superefficent class for geometries because it saves all data in buffers. <br />
It reduces memory costs and cpu cycles. But it is not as easy to work with because of all the necessary buffer calculations.<br />
It is mainly interesting when working with static objects.
</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
This creates a new [name]. It also sets several properties to an default value.
</div>
<h2>Properties</h2>
<h3>.[page:Integer id]</h3>
<div>
Unique number of this buffergeometry instance
</div>
<h3>.[page:Hashmap attributes]</h3>
<div>
This hashmap has as id the name of the attribute to be set and as value the buffer to set it to.
</div>
<h3>.[page:Boolean dynamic]</h3>
<div>
When set, it holds certain buffers in memory to have faster updates for this object. When unset, it deletes those buffers and saves memory.
</div>
<h3>.[page:Array offsets]</h3>
<div>
This Array should contain every offset at which the buffers should be rendered. This is important for indexed buffers.
</div>
<h3>.[page:Object boundingBox]</h3>
<div>
Bounding box.
<code>{ min: new THREE.Vector3(), max: new THREE.Vector3() }</code>
</div>
<h3>.[page:Object boundingSphere]</h3>
<div>
Bounding sphere.
<code>{ radius: float }</code>
</div>
<h3>.[page:Array morphTargets]</h3>
<div>
Array of morph targets. Each morph target is a Javascript object:
<code>{ name: "targetName", vertices: [ new THREE.Vertex(), ... ] }</code>
Morph vertices match number and order of primary vertices.
</div>
<h3>.[page:boolean hasTangents]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.applyMatrix( [page:Matrix4 matrix] )</h3>
<div>
Bakes matrix transform directly into vertex coordinates.
</div>
<h3>.computeVertexNormals()</h3>
<div>
Computes vertex normals by averaging face normals.<br />
</div>
<h3>.computeTangents()</h3>
<div>
Computes vertex tangents.<br />
Based on [link:http://www.terathon.com/code/tangent.html]<br />
Geometry must have vertex [page:UV UVs] (layer 0 will be used).
</div>
<h3>.computeBoundingBox()</h3>
<div>
Computes bounding box of the geometry, updating [page:Geometry Geometry.boundingBox] attribute.<br />
Bounding boxes aren't computed by default. They need to be explicitly computed, otherwise they are *null*.
</div>
<h3>.computeBoundingSphere()</h3>
<div>
Computes bounding sphere of the geometry, updating [page:Geometry Geometry.boundingSphere] attribute.<br />
Bounding spheres aren't computed by default. They need to be explicitly computed, otherwise they are *null*.
</div>
<h3>.dispose()</h3>
<div>
Disposes the object from memory. <br />
You need to call this when you want the bufferGeometry removed while the application is running.
</div>
<h3>.hasEventListener([page:todo type], [page:todo listener]) [page:todo]</h3>
<div>
type -- todo <br />
listener -- todo
</div>
<div>
todo
</div>
<h3>.addEventListener([page:todo type], [page:todo listener]) [page:todo]</h3>
<div>
type -- todo <br />
listener -- todo
</div>
<div>
todo
</div>
<h3>.removeEventListener([page:todo type], [page:todo listener]) [page:todo]</h3>
<div>
type -- todo <br />
listener -- todo
</div>
<div>
todo
</div>
<h3>.normalizeNormals() [page:todo]</h3>
<div>
todo
</div>
<h3>.dispatchEvent([page:todo event]) [page:todo]</h3>
<div>
event -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">Object for keeping track of time.</div>
<h2>Constructor</h2>
<h3>[name]( [page:Boolean autoStart] )</h3>
<div>
autoStart — Automatically start the clock.
</div>
<h2>Properties</h2>
<h3>.[page:Boolean autoStart]</h3>
<div>
If set, starts the clock automatically when the first update is called.
</div>
<h3>.[page:Float startTime]</h3>
<div>
When the clock is running, It holds the start time of the clock. <br />
This counted from the number of milliseconds elapsed since 1 January 1970 00:00:00 UTC.
</div>
<h3>.[page:Float oldTime]</h3>
<div>
When the clock is running, It holds the previous time from a update.<br />
This counted from the number of milliseconds elapsed since 1 January 1970 00:00:00 UTC.
</div>
<h3>.[page:Float elapsedTime]</h3>
<div>
When the clock is running, It holds the time elapsed between the start of the clock to the previous update.<br />
This counted from the number of milliseconds elapsed since 1 January 1970 00:00:00 UTC.
</div>
<h3>.[page:Boolean running]</h3>
<div>
This property keeps track whether the clock is running or not.
</div>
<h2>Methods</h2>
<h3>.start()</h3>
<div>
Starts clock.
</div>
<h3>.stop()</h3>
<div>
Stops clock.
</div>
<h3>.getElapsedTime() [page:Float]</h3>
<div>
Get the seconds passed since the clock started.
</div>
<h3>.getDelta() [page:Float]</h3>
<div>
Get the seconds passed since the last call to this method.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">JavaScript events for custom objects.<br />
<a href="https://github.com/mrdoob/eventdispatcher.js">https://github.com/mrdoob/eventdispatcher.js</a></div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
Creates EventDispatcher object.
</div>
<h2>Methods</h2>
<h3>.addEventListener( [page:String type], [page:Function listener] )</h3>
<div>
type - The type of event to listen to.<br />
listener - The function that gets called when the event is fired.
</div>
<div>
Adds a listener to an event type.
</div>
<h3>.hasEventListener( [page:String type], [page:Function listener] )</h3>
<div>
type - The type of event to listen to.<br />
listener - The function that gets called when the event is fired.
</div>
<div>
Checks if listener is added to an event type.
</div>
<h3>.removeEventListener( [page:String type], [page:Function listener] )</h3>
<div>
type - The type of the listener that gets removed.<br />
listener - The listener function that gets removed.
</div>
<div>
Removes a listener from an event type.
</div>
<h3>.dispatchEvent( [page:String type] )</h3>
<div>
type - The type of event that gets fired.
</div>
<div>
Fire an event type.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">
Triangle face.
</div>
<h2>Example</h2>
<code>var normal = new THREE.Vector3( 0, 1, 0 );
var color = new THREE.Color( 0xffaa00 );
var face = new THREE.Face3( 0, 1, 2, normal, color, 0 );</code>
<h2>Constructor</h2>
<h3>[name]( [page:Integer a], [page:Integer b], [page:Integer c], [page:Vector3 normal], [page:Color color], [page:Integer materialIndex] )</h3>
<div>
a — Vertex A index.<br />
b — Vertex B index.<br />
c — Vertex C index.<br />
normal — Face normal or array of vertex normals.<br />
color — Face color or array of vertex colors.<br />
materialIndex — Material index.
</div>
<h2>Properties</h2>
<h3>.[page:Integer a]</h3>
<div>
Vertex A index.
</div>
<h3>.[page:Integer b]</h3>
<div>
Vertex B index.
</div>
<h3>.[page:Integer c]</h3>
<div>
Vertex C index.
</div>
<h3>.[page:Vector3 normal]</h3>
<div>
Face normal.
</div>
<h3>.[page:Color color]</h3>
<div>
Face color.
</div>
<h3>.[page:Array vertexNormals]</h3>
<div>
Array of 3 vertex normals.
</div>
<h3>.[page:Array vertexColors]</h3>
<div>
Array of 3 vertex colors.
</div>
<h3>.[page:Array vertexTangents]</h3>
<div>
Array of 3 vertex tangents.
</div>
<h3>.[page:Integer materialIndex]</h3>
<div>
Material index (points to [page:MeshFaceMaterial MeshFaceMaterial.materials]).
</div>
<h3>.[page:Vector3 centroid]</h3>
<div>
Face centroid.
</div>
<h2>Methods</h2>
<h3>.clone()</h3>
<div>
Creates a new clone of the Face3 object.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">
Quad face.
</div>
<h2>Example</h2>
<code>var normal = new THREE.Vector3( 0, 1, 0 );
var color = new THREE.Color( 0xffaa00 );
var face = new THREE.Face4( 0, 1, 2, 3, normal, color, 0 );</code>
<h2>Constructor</h2>
<h3>[name]( [page:Integer a], [page:Integer b], [page:Integer c], [page:Integer d], [page:Vector3 normal], [page:Color color], [page:Integer materialIndex] )</h3>
<div>
a — Vertex A index.<br />
b — Vertex B index.<br />
c — Vertex C index.<br />
d — Vertex D index.<br />
normal — Face normal or array of vertex normals.<br />
color — Face color or array of vertex colors.<br />
materialIndex — Material index.
</div>
<h2>Properties</h2>
<h3>.[page:Integer a]</h3>
<div>
Vertex A index.
</div>
<h3>.[page:Integer b]</h3>
<div>
Vertex B index.
</div>
<h3>.[page:Integer c]</h3>
<div>
Vertex C index.
</div>
<h3>.[page:Integer d]</h3>
<div>
Vertex D index.
</div>
<h3>.[page:Vector3 normal]</h3>
<div>
Face normal.
</div>
<h3>.[page:Color color]</h3>
<div>
Face color.
</div>
<h3>.[page:Array vertexNormals]</h3>
<div>
Array of 4 vertex normals.
</div>
<h3>.[page:Array vertexColors]</h3>
<div>
Array of 4 vertex colors.
</div>
<h3>.[page:Array vertexTangents]</h3>
<div>
Array of 4 vertex tangets.
</div>
<h3>.[page:Integer materialIndex]</h3>
<div>
Material index (points to [page:MeshFaceMaterial MeshFaceMaterial.materials]).
</div>
<h3>.[page:Vector3 centroid]</h3>
<div>
Face centroid.
</div>
<h2>Methods</h2>
<h3>.clone()</h3>
<div>
Creates a new clone of the Face4 object.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">
Base class for geometries.<br />
A geometry holds all data necessary to describe a 3D model.
</div>
<h2>Example</h2>
<code>var geometry = new THREE.Geometry()
geometry.vertices.push( new THREE.Vector3( -10, 10, 0 ) );
geometry.vertices.push( new THREE.Vector3( -10, -10, 0 ) );
geometry.vertices.push( new THREE.Vector3( 10, -10, 0 ) );
geometry.faces.push( new THREE.Face3( 0, 1, 2 ) );
geometry.computeBoundingSphere();
</code>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:Integer id]</h3>
<div>
Unique number of this geometry instance
</div>
<h3>.[page:String name]</h3>
<div>
Name for this geometry. Default is an empty string.
</div>
<h3>.[page:Array vertices]</h3>
<div>
Array of [page:Vector3 vertices].<br />
The array of vertices hold every position of points of the model.<br />
To signal an update in this array, [page:Geometry Geometry.verticesNeedUpdate] needs to be set to true.
</div>
<h3>.[page:Array colors]</h3>
<div>
Array of vertex [page:Color colors], matching number and order of vertices.<br />
Used in [page:ParticleSystem], [page:Line] and [page:Ribbon].<br />
[page:Mesh Meshes] use per-face-use-of-vertex colors embedded directly in faces.<br />
To signal an update in this array, [page:Geometry Geometry.colorsNeedUpdate] needs to be set to true.
</div>
<h3>.[page:Array normals]</h3>
<div>
Array of vertex [page:Vector3 normals], matching number and order of vertices.<br />
[link:http://en.wikipedia.org/wiki/Normal_(geometry) Normal vectors] are nessecary for lighting <br />
To signal an update in this array, [page:Geometry Geometry.normalsNeedUpdate] needs to be set to true.
</div>
<h3>.[page:Array faces]</h3>
<div>
Array of [page:Face3 triangles] or/and [page:Face4 quads].<br />
The array of faces describe how each vertex in the model is connected with each other.<br />
To signal an update in this array, [page:Geometry Geometry.elementsNeedUpdate] needs to be set to true.
</div>
<h3>.[page:Array faceUvs]</h3>
<div>
Array of face [page:UV] layers.<br />
Each UV layer is an array of [page:UV] matching order and number of faces.<br />
To signal an update in this array, [page:Geometry Geometry.uvsNeedUpdate] needs to be set to true.
</div>
<h3>.[page:Array faceVertexUvs]</h3>
<div>
Array of face [page:UV] layers.<br />
Each UV layer is an array of [page:UV] matching order and number of vertices in faces.<br />
To signal an update in this array, [page:Geometry Geometry.uvsNeedUpdate] needs to be set to true.
</div>
<h3>.[page:Array morphTargets]</h3>
<div>
Array of morph targets. Each morph target is a Javascript object:
<code>{ name: "targetName", vertices: [ new THREE.Vector3(), ... ] }</code>
Morph vertices match number and order of primary vertices.
</div>
<h3>.[page:Array morphColors]</h3>
<div>
Array of morph colors. Morph colors have similar structure as morph targets, each color set is a Javascript object:
<code>morphColor = { name: "colorName", colors: [ new THREE.Color(), ... ] }</code>
Morph colors can match either number and order of faces (face colors) or number of vertices (vertex colors).
</div>
<h3>.[page:Array morphNormals]</h3>
<div>
Array of morph normals. Morph normals have similar structure as morph targets, each normal set is a Javascript object:
<code>morphNormal = { name: "NormalName", normals: [ new THREE.Vector3(), ... ] }</code>
</div>
<h3>.[page:Array skinWeights]</h3>
<div>
Array of skinning weights, matching number and order of vertices.
</div>
<h3>.[page:Array skinIndices]</h3>
<div>
Array of skinning indices, matching number and order of vertices.
</div>
<h3>.[page:Object boundingBox]</h3>
<div>
Bounding box.
<code>{ min: new THREE.Vector3(), max: new THREE.Vector3() }</code>
</div>
<h3>.[page:Object boundingSphere]</h3>
<div>
Bounding sphere.
<code>{ radius: float }</code>
</div>
<h3>.[page:Boolean hasTangents]</h3>
<div>
True if geometry has tangents. Set in [page:Geometry Geometry.computeTangents].
</div>
<h3>.[page:Boolean dynamic]</h3>
<div>
Set to *true* if attribute buffers will need to change in runtime (using "dirty" flags).<br/>
Unless set to true internal typed arrays corresponding to buffers will be deleted once sent to GPU.<br/>
Defaults to true.
</div>
<h3>.[page:Boolean verticesNeedUpdate]</h3>
<div>
Set to *true* if the vertices array has been updated.
</div>
<h3>.[page:Boolean elementsNeedUpdate]</h3>
<div>
Set to *true* if the faces array has been updated.
</div>
<h3>.[page:Boolean uvsNeedUpdate]</h3>
<div>
Set to *true* if the uvs array has been updated.
</div>
<h3>.[page:Boolean normalsNeedUpdate]</h3>
<div>
Set to *true* if the normals array has been updated.
</div>
<h3>.[page:Boolean tangentsNeedUpdate]</h3>
<div>
Set to *true* if the tangents in the faces has been updated.
</div>
<h3>.[page:Boolean colorsNeedUpdate]</h3>
<div>
Set to *true* if the colors array has been updated.
</div>
<h3>.[page:Boolean lineDistancesNeedUpdate]</h3>
<div>
Set to *true* if the linedistances array has been updated.
</div>
<h3>.[page:Boolean buffersNeedUpdate]</h3>
<div>
Set to *true* if an array has changed in length.
</div>
<h3>.[page:array morphNormals]</h3>
<div>
todo
</div>
<h3>.[page:array lineDistances]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.applyMatrix( [page:Matrix4 matrix] )</h3>
<div>
Bakes matrix transform directly into vertex coordinates.
</div>
<h3>.computeCentroids()</h3>
<div>
Computes centroids for all faces.
</div>
<h3>.computeFaceNormals()</h3>
<div>
Computes face normals.
</div>
<h3>.computeVertexNormals()</h3>
<div>
Computes vertex normals by averaging face normals.<br />
Face normals must be existing / computed beforehand.
</div>
<h3>.computeMorphNormals()</h3>
<div>
Computes morph normals.
</div>
<h3>.computeTangents()</h3>
<div>
Computes vertex tangents.<br />
Based on [link:http://www.terathon.com/code/tangent.html]<br />
Geometry must have vertex [page:UV UVs] (layer 0 will be used).
</div>
<h3>.computeBoundingBox()</h3>
<div>
Computes bounding box of the geometry, updating [page:Geometry Geometry.boundingBox] attribute.
</div>
<h3>.computeBoundingSphere()</h3>
<div>
Computes bounding sphere of the geometry, updating [page:Geometry Geometry.boundingSphere] attribute.
</div>
<div>Neither bounding boxes or bounding spheres are computed by default. They need to be explicitly computed, otherwise they are *null*.</div>
<h3>.mergeVertices()</h3>
<div>
Checks for duplicate vertices using hashmap.<br />
Duplicated vertices are removed and faces' vertices are updated.
</div>
<h3>.clone()</h3>
<div>
Creates a new clone of the Geometry.
</div>
<h3>.dispose()</h3>
<div>
Removes The object from memory. <br />
Don't forget to call this method when you remove an geometry because it can cuase meomory leaks.
</div>
<h3>.dispatchEvent([page:todo event]) [page:todo]</h3>
<div>
event -- todo
</div>
<div>
todo
</div>
<h3>.hasEventListener([page:todo type], [page:todo listener]) [page:todo]</h3>
<div>
type -- todo <br />
listener -- todo
</div>
<div>
todo
</div>
<h3>.removeEventListener([page:todo type], [page:todo listener]) [page:todo]</h3>
<div>
type -- todo <br />
listener -- todo
</div>
<div>
todo
</div>
<h3>.computeLineDistances() [page:todo]</h3>
<div>
todo
</div>
<h3>.addEventListener([page:todo type], [page:todo listener]) [page:todo]</h3>
<div>
type -- todo <br />
listener -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">Base class for scene graph objects.</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:Integer id]</h3>
<div>
Unique number of this object instance.
</div>
<h3>.[page:String name]</h3>
<div>
Optional name of the object (doesn't need to be unique).
</div>
<h3>.[page:Object3D parent]</h3>
<div>
Object's parent in the scene graph.
</div>
<h3>.[page:Object3D children]</h3>
<div>
Array with object's children.
</div>
<h3>.[page:Vector3 position]</h3>
<div>
Object's local position.
</div>
<h3>.[page:Vector3 rotation]</h3>
<div>
Object's local rotation (<a href="https://en.wikipedia.org/wiki/Euler_angles">Euler angles</a>), in radians.
</div>
<h3>.[page:String eulerOrder]</h3>
<div>
Order of axis for Euler angles.
</div>
<h3>.[page:Vector3 scale]</h3>
<div>
Object's local scale.
</div>
<h3>.[page:Vector3 up]</h3>
<div>
Up direction.
</div>
<h3>.[page:Matrix4 matrix]</h3>
<div>
Local transform.
</div>
<h3>.[page:Quaternion quaternion]</h3>
<div>
Object's local rotation as [page:Quaternion Quaternion]. Only used when useQuaternion is set to true.
</div>
<h3>.[page:Boolean useQuaternion]</h3>
<div>
Use quaternion instead of Euler angles for specifying local rotation.
</div>
<h3>.[page:Float renderDepth]</h3>
<div>
Override depth-sorting order if non *null*.
</div>
<h3>.[page:Boolean visible]</h3>
<div>
Object gets rendered if *true*.
</div>
<h3>.[page:Boolean castShadow]</h3>
<div>
Gets rendered into shadow map.
</div>
<h3>.[page:Boolean receiveShadow]</h3>
<div>
Material gets baked in shadow receiving.
</div>
<h3>.[page:Boolean frustumCulled]</h3>
<div>
When this is set, it checks every frame if the object is in the frustum of the camera. Otherwise the object gets drawn every frame even if it isn't visible.
</div>
<h3>.[page:Boolean matrixAutoUpdate]</h3>
<div>
When this is set, it calculates the matrix of position, (rotation or quaternion) and scale every frame and also recalculates the matrixWorld property.
</div>
<h3>.[page:Boolean matrixWorldNeedsUpdate]</h3>
<div>
When this is set, it calculates the matrixWorld in that frame and resets this property to false.
</div>
<h3>.[page:Boolean rotationAutoUpdate]</h3>
<div>
When this is set, then the rotationMatrix gets calculated every frame.
</div>
<h3>.[page:object userData]</h3>
<div>
todo
</div>
<h3>.[page:Matrix4 matrixWorld]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.applyMatrix( [page:Matrix4 matrix])</h3>
<div>
matrix - matrix
</div>
<div>
This updates the position, rotation and scale with the matrix.
</div>
<h3>.translateX( [page:Float distance] )</h3>
<div>
distance - Distance.<br />
</div>
<div>
Translates object along x axis by distance.
</div>
<h3>.translateY( [page:Float distance] )</h3>
<div>
distance - Distance.<br />
</div>
<div>
Translates object along y axis by distance.
</div>
<h3>.translateZ( [page:Float distance] )</h3>
<div>
distance - Distance.<br />
</div>
<div>
Translates object along z axis by distance.
</div>
<h3>.localToWorld( [page:Vector3 vector] )</h3>
<div>
vector - A local vector.<br />
</div>
<div>
Updates the vector from local space to world space.
</div>
<h3>.worldToLocal( [page:Vector3 vector] )</h3>
<div>
vector - A world vector.<br />
</div>
<div>
Updates the vector from world space to local space.
</div>
<h3>.lookAt( [page:Vector3 vector] )</h3>
<div>
vector - A world vector to look at.<br />
</div>
<div>
Rotates object to face point in space.
</div>
<h3>.add( [page:Object3D object] )</h3>
<div>
object - An object.<br />
</div>
<div>
Adds *object* as child of this object.
</div>
<h3>.remove( [page:Object3D object] )</h3>
<div>
object - An object.<br />
</div>
<div>
Removes *object* as child of this object.
</div>
<h3>.traverse( [page:Function callback] )</h3>
<div>
callback - An Function with as first argument an object3D object.<br />
</div>
<div>
Executes the callback on this object and all descendants.
</div>
<h3>.getDescendants( [page:Array array] )</h3>
<div>
array - optional argument that returns the the array with descendants.<br />
</div>
<div>
Searches whole subgraph recursively to add all objects in the array.
</div>
<h3>.updateMatrix()</h3>
<div>
Updates local transform.
</div>
<h3>.updateMatrixWorld( [page:Boolean force] )</h3>
<div>
Updates global transform of the object and its children.
</div>
<h3>.clone()</h3>
<div>
Creates a new clone of this object and all descendants.
</div>
<h3>.getObjectByName([page:todo name], [page:todo recursive]) [page:todo]</h3>
<div>
name -- todo <br />
recursive -- todo
</div>
<div>
todo
</div>
<h3>.translateOnAxis([page:todo axis], [page:todo distance]) [page:todo]</h3>
<div>
axis -- todo <br />
distance -- todo
</div>
<div>
todo
</div>
<h3>.getObjectById([page:todo id], [page:todo recursive]) [page:todo]</h3>
<div>
id -- todo <br />
recursive -- todo
</div>
<div>
todo
</div>
<h3>.rotateOnAxis([page:todo axis], [page:todo angle]) [page:todo]</h3>
<div>
axis -- todo <br />
angle -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">Projects points between spaces.</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Properties</h2>
<h2>Methods</h2>
<h3>.projectVector( [page:Vector3 vector], [page:Camera camera] ) [page:Vector3]</h3>
<div>
[page:Vector3 vector] — vector to project.<br />
[page:Camera camera] — camera to use in the projection.<br />
</div>
<div>
Projects a vector with the camera. Caution, this method changes 'vector'.
</div>
<h3>.unprojectVector( [page:Vector3 vector], [page:Camera camera] ) [page:Vector3]</h3>
<div>
[page:Vector3 vector] — vector to unproject.<br />
[page:Camera camera] — camera to use in the projection.<br />
</div>
<div>
Unprojects a vector with the camera. Caution, this method changes 'vector'.
</div>
<h3>.pickingRay( [page:Vector3 vector], [page:Camera camera] ) [page:Raycaster]</h3>
<div>
Translates a 2D point from NDC (<em>Normalized Device Coordinates</em>) to a [page:Raycaster] that can be used for picking. NDC range from [-1..1] in x (left to right) and [1.0 .. -1.0] in y (top to bottom).
</div>
<h3>.projectScene( [page:Scene scene], [page:Camera camera], [page:Boolean sort] ) [page:Object]</h3>
<div>
[page:Scene scene] — scene to project.<br />
[page:Camera camera] — camera to use in the projection.<br />
[page:Boolean sort] — select whether to sort elements using the <a href="http://en.wikipedia.org/wiki/Painter%27s_algorithm">Painter's algorithm</a>.
</div>
<div>
Transforms a 3D [page:Scene scene] object into 2D render data that can be rendered in a screen with your renderer of choice, projecting and clipping things out according to the used camera.
</div>
<div>
If the <em>scene</em> were a real scene, this method would be the equivalent of taking a picture with the <em>camera</em> (and developing the film would be the next step, using a Renderer).
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">
This class makes raycasting easier. Raycasting is used for picking and more.
</div>
<h2>Constructor</h2>
<h3>[name]( [page:Vector3 origin], [page:Vector3 direction], [page:Float near], [page:Float far] ) {</h3>
<div>
[page:Vector3 origin] — The origin vector where the ray casts from.<br />
[page:Vector3 direction] — The direction vector that gives direction to the ray.<br />
[page:Float near] — All results returned are further away then near. Near can't be negative. Default value is 0.<br />
[page:Float far] — All results returned are closer then far. Far can't be lower then near . Default value is Infinity.
</div>
<div>
This creates a new raycaster object.<br />
</div>
<h2>Properties</h2>
<h3>.[page:Ray ray]</h3>
<div>
The Ray used for the raycasting.
</div>
<h3>.[page:float near]</h3>
<div>
The near factor of the raycaster. This value indicates which objects can be discarded based on the distance.<br />
This value shouldn't be negative and should be smaller then the far property.
</div>
<h3>.[page:float far]</h3>
<div>
The far factor of the raycaster. This value indicates which objects can be discarded based on the distance.<br />
This value shouldn't be negative and should be smaller then the far property.
</div>
<h3>.[page:float precision]</h3>
<div>
The precision factor of the raycaster.
</div>
<h2>Methods</h2>
<h3>.set( [page:Vector3 origin], [page:Vector3 direction] )</h3>
<div>
[page:Vector3 origin] — The origin vector where the ray casts from.<br />
[page:Vector3 direction] — The direction vector that gives direction to the ray.
</div>
<div>
Updates the ray with a new origin and direction.
</div>
<h3>.intersectObject( [page:Object3D object], [page:Boolean recursive] )</h3>
<div>
[page:Object3D object] — The object to check for intersection with the ray.<br />
[page:Boolean recursive] — If set, it also checks all descendants. Otherwise it only checks intersecton with the object.
</div>
<div>
checks all intersection between the ray and the object with or without the descendants.
</div>
<h3>.intersectObjects( [page:Array objects], [page:Boolean recursive] )</h3>
<div>
[page:Array objects] — The objects to check for intersection with the ray.<br />
[page:Boolean recursive] — If set, it also checks all descendants of the objects. Otherwise it only checks intersecton with the objects.
</div>
<div>
checks all intersection between the ray and the objects with or without the descendants.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Properties</h2>
<h3>.[page:number divisions]</h3>
<div>
todo
</div>
<h3>.[page:string style]</h3>
<div>
todo
</div>
<h3>.[page:string weight]</h3>
<div>
todo
</div>
<h3>.[page:string face]</h3>
<div>
todo
</div>
<h3>.[page:object faces]</h3>
<div>
todo
</div>
<h3>.[page:number size]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.drawText([page:todo text]) [page:todo]</h3>
<div>
text -- todo
</div>
<div>
todo
</div>
<h3>.Triangulate([page:todo contour], [page:todo indices]) [page:todo]</h3>
<div>
contour -- todo <br />
indices -- todo
</div>
<div>
todo
</div>
<h3>.extractGlyphPoints([page:todo c], [page:todo face], [page:todo scale], [page:todo offset], [page:todo path]) [page:todo]</h3>
<div>
c -- todo <br />
face -- todo <br />
scale -- todo <br />
offset -- todo <br />
path -- todo
</div>
<div>
todo
</div>
<h3>.generateShapes([page:todo text], [page:todo parameters]) [page:todo]</h3>
<div>
text -- todo <br />
parameters -- todo
</div>
<div>
todo
</div>
<h3>.loadFace([page:todo data]) [page:todo]</h3>
<div>
data -- todo
</div>
<div>
todo
</div>
<h3>.getFace() [page:todo]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">Contains handy functions geometry manipulations.</div>
<h2>Methods</h2>
<h3> .merge( [page:Geometry geometry1] , [page:Geometry geometry2], [page:Integer materialIndexOffset] )</h3>
<div>
geometry1 — Parent geomentry element <br />
geometry2 — Geometry that need to be added in parent <br />
materialIndexOffset — Offset applied to the materialIndex of all the new faces in the merged geometry. Default : 0 <br />
</div>
<h3> .removeMaterials( [page:Geometry geometry1] , [page:Material materialIndexArray] )</h3>
<div>
geometry — Geometry that need to remove material <br />
materialIndex — Material index<br />
</div>
<h3> .randomPointInTriangle( [page:Vector VectorA] , [page:Vector VectorB] , [page:Vector VectorC])</h3>
<div>
VectorA — Vector <br />
VectorB — Vector <br />
VectorC — Vector <br />
returns [page:Int Point]
</div>
<h3> .randomPointInFace( [page:face Face] , [page:geometry Geometry] , [page:Boolean useCachedAreas])</h3>
<div>
Face — Face id<br />
Geometry — Geometry that contains the Face <br />
useCachedAreas — Flag to use cached areas. Default : False <br />
returns [page:Int Point]
</div>
<h3> .randomPointsInGeometry( [page:geometry Geometry] , [page:Integer Points])</h3>
<div>
Geometry — Geometry <br />
returns [page:Int Point]
</div>
<h3> .triangleArea ( [page:Vector VectorA] , [page:Vector VectorB] , [page:Vector VectorC]) </h3>
<div>
VectorA — Vector <br />
VectorB — Vector <br />
VectorC — Vector <br />
returns [page:Int Area]
</div>
<h3> .center ( [page:geometry Geometry] ) </h3>
<div>
Geometry — Geometry to Center position
</div>
<h3> .triangulateQuads ( [page:geometry Geometry] ) </h3>
<div>
Geometry — Geometry to triangulate Quads <br />
</div>
<h3> .setMaterialIndex ( [page:geometry Geometry] , [page:Integer index], [page:Face startFace], [page:Face endFace]) </h3>
<div>
Geometry — Geometry <br />
Index — New index value for the material <br />
startFace — Starting range of Face <br />
endFace — Final range of Face <br />
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Properties</h2>
<h3>.[page:string crossOrigin]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.generateDataTexture([page:todo width], [page:todo height], [page:todo color]) [page:todo]</h3>
<div>
width -- todo <br />
height -- todo <br />
color -- todo
</div>
<div>
todo
</div>
<h3>.parseDDS([page:todo buffer], [page:todo loadMipmaps]) [page:todo]</h3>
<div>
buffer -- todo <br />
loadMipmaps -- todo
</div>
<div>
todo
</div>
<h3>.loadCompressedTexture([page:todo url], [page:todo mapping], [page:todo onLoad], [page:todo onError]) [page:todo]</h3>
<div>
url -- todo <br />
mapping -- todo <br />
onLoad -- todo <br />
onError -- todo
</div>
<div>
todo
</div>
<h3>.loadTexture([page:todo url], [page:todo mapping], [page:todo onLoad], [page:todo onError]) [page:todo]</h3>
<div>
url -- todo <br />
mapping -- todo <br />
onLoad -- todo <br />
onError -- todo
</div>
<div>
todo
</div>
<h3>.getNormalMap([page:todo image], [page:todo depth]) [page:todo]</h3>
<div>
image -- todo <br />
depth -- todo
</div>
<div>
todo
</div>
<h3>.loadCompressedTextureCube([page:todo array], [page:todo mapping], [page:todo onLoad], [page:todo onError]) [page:todo]</h3>
<div>
array -- todo <br />
mapping -- todo <br />
onLoad -- todo <br />
onError -- todo
</div>
<div>
todo
</div>
<h3>.loadTextureCube([page:todo array], [page:todo mapping], [page:todo onLoad], [page:todo onError]) [page:todo]</h3>
<div>
array -- todo <br />
mapping -- todo <br />
onLoad -- todo <br />
onError -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Methods</h2>
<h3>.createMultiMaterialObject([page:todo geometry], [page:todo materials]) [page:todo]</h3>
<div>
geometry -- todo <br />
materials -- todo
</div>
<div>
todo
</div>
<h3>.attach([page:todo child], [page:todo scene], [page:todo parent]) [page:todo]</h3>
<div>
child -- todo <br />
scene -- todo <br />
parent -- todo
</div>
<div>
todo
</div>
<h3>.detach([page:todo child], [page:todo parent], [page:todo scene]) [page:todo]</h3>
<div>
child -- todo <br />
parent -- todo <br />
scene -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo root], [page:todo name], [page:todo interpolationType])</h3>
<div>
root -- todo <br />
name -- todo <br />
interpolationType -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:todo root]</h3>
<div>
todo
</div>
<h3>.[page:todo data]</h3>
<div>
todo
</div>
<h3>.[page:todo hierarchy]</h3>
<div>
todo
</div>
<h3>.[page:number currentTime]</h3>
<div>
todo
</div>
<h3>.[page:number timeScale]</h3>
<div>
todo
</div>
<h3>.[page:boolean isPlaying]</h3>
<div>
todo
</div>
<h3>.[page:boolean isPaused]</h3>
<div>
todo
</div>
<h3>.[page:boolean loop]</h3>
<div>
todo
</div>
<h3>.[page:number interpolationType]</h3>
<div>
todo
</div>
<h3>.[page:array points]</h3>
<div>
todo
</div>
<h3>.[page:Vector3 target]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.play() [page:todo]</h3>
<div>
todo
</div>
<h3>.pause() [page:todo]</h3>
<div>
todo
</div>
<h3>.stop() [page:todo]</h3>
<div>
todo
</div>
<h3>.update([page:todo deltaTimeMS]) [page:todo]</h3>
<div>
deltaTimeMS -- todo
</div>
<div>
todo
</div>
<h3>.interpolateCatmullRom([page:todo points], [page:todo scale]) [page:todo]</h3>
<div>
points -- todo <br />
scale -- todo
</div>
<div>
todo
</div>
<h3>.getNextKeyWith([page:todo type], [page:todo h], [page:todo key]) [page:todo]</h3>
<div>
type -- todo <br />
h -- todo <br />
key -- todo
</div>
<div>
todo
</div>
<h3>.getPrevKeyWith([page:todo type], [page:todo h], [page:todo key]) [page:todo]</h3>
<div>
type -- todo <br />
h -- todo <br />
key -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:number CATMULLROM]</h3>
<div>
todo
</div>
<h3>.[page:number CATMULLROM_FORWARD]</h3>
<div>
todo
</div>
<h3>.[page:number LINEAR]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.removeFromUpdate([page:todo animation]) [page:todo]</h3>
<div>
animation -- todo
</div>
<div>
todo
</div>
<h3>.get([page:todo name]) [page:todo]</h3>
<div>
name -- todo
</div>
<div>
todo
</div>
<h3>.update([page:todo deltaTimeMS]) [page:todo]</h3>
<div>
deltaTimeMS -- todo
</div>
<div>
todo
</div>
<h3>.parse([page:todo root]) [page:todo]</h3>
<div>
root -- todo
</div>
<div>
todo
</div>
<h3>.add([page:todo data]) [page:todo]</h3>
<div>
data -- todo
</div>
<div>
todo
</div>
<h3>.addToUpdate([page:todo animation]) [page:todo]</h3>
<div>
animation -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo root], [page:todo data])</h3>
<div>
root -- todo <br />
data -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:todo root]</h3>
<div>
todo
</div>
<h3>.[page:todo data]</h3>
<div>
todo
</div>
<h3>.[page:todo hierarchy]</h3>
<div>
todo
</div>
<h3>.[page:number currentTime]</h3>
<div>
todo
</div>
<h3>.[page:number timeScale]</h3>
<div>
todo
</div>
<h3>.[page:boolean isPlaying]</h3>
<div>
todo
</div>
<h3>.[page:boolean isPaused]</h3>
<div>
todo
</div>
<h3>.[page:boolean loop]</h3>
<div>
todo
</div>
<h3>.[page:number influence]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.play() [page:todo]</h3>
<div>
todo
</div>
<h3>.pause() [page:todo]</h3>
<div>
todo
</div>
<h3>.stop() [page:todo]</h3>
<div>
todo
</div>
<h3>.update([page:todo deltaTimeMS]) [page:todo]</h3>
<div>
deltaTimeMS -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo root], [page:todo data], [page:todo JITCompile])</h3>
<div>
root -- todo <br />
data -- todo <br />
JITCompile -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:todo root]</h3>
<div>
todo
</div>
<h3>.[page:todo data]</h3>
<div>
todo
</div>
<h3>.[page:todo hierarchy]</h3>
<div>
todo
</div>
<h3>.[page:number currentTime]</h3>
<div>
todo
</div>
<h3>.[page:number timeScale]</h3>
<div>
todo
</div>
<h3>.[page:boolean isPlaying]</h3>
<div>
todo
</div>
<h3>.[page:boolean isPaused]</h3>
<div>
todo
</div>
<h3>.[page:boolean loop]</h3>
<div>
todo
</div>
<h3>.[page:boolean JITCompile]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.play() [page:todo]</h3>
<div>
todo
</div>
<h3>.pause() [page:todo]</h3>
<div>
todo
</div>
<h3>.stop() [page:todo]</h3>
<div>
todo
</div>
<h3>.update([page:todo deltaTimeMS]) [page:todo]</h3>
<div>
deltaTimeMS -- todo
</div>
<div>
todo
</div>
<h3>.interpolateCatmullRom([page:todo points], [page:todo scale]) [page:todo]</h3>
<div>
points -- todo <br />
scale -- todo
</div>
<div>
todo
</div>
<h3>.getNextKeyWith([page:todo sid], [page:todo h], [page:todo key]) [page:todo]</h3>
<div>
sid -- todo <br />
h -- todo <br />
key -- todo
</div>
<div>
todo
</div>
<h3>.getPrevKeyWith([page:todo sid], [page:todo h], [page:todo key]) [page:todo]</h3>
<div>
sid -- todo <br />
h -- todo <br />
key -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo width], [page:todo height], [page:todo fov], [page:todo near], [page:todo far], [page:todo orthoNear], [page:todo orthoFar])</h3>
<div>
width -- todo <br />
height -- todo <br />
fov -- todo <br />
near -- todo <br />
far -- todo <br />
orthoNear -- todo <br />
orthoFar -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:todo fov]</h3>
<div>
todo
</div>
<h3>.[page:number right]</h3>
<div>
todo
</div>
<h3>.[page:number bottom]</h3>
<div>
todo
</div>
<h3>.[page:PerspectiveCamera cameraP]</h3>
<div>
todo
</div>
<h3>.[page:number top]</h3>
<div>
todo
</div>
<h3>.[page:number zoom]</h3>
<div>
todo
</div>
<h3>.[page:number far]</h3>
<div>
todo
</div>
<h3>.[page:number near]</h3>
<div>
todo
</div>
<h3>.[page:boolean inPerspectiveMode]</h3>
<div>
todo
</div>
<h3>.[page:OrthographicCamera cameraO]</h3>
<div>
todo
</div>
<h3>.[page:boolean inOrthographicMode]</h3>
<div>
todo
</div>
<h3>.[page:number left]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.toBottomView() [page:todo]</h3>
<div>
todo
</div>
<h3>.setFov([page:todo fov]) [page:todo]</h3>
<div>
fov -- todo
</div>
<div>
todo
</div>
<h3>.toBackView() [page:todo]</h3>
<div>
todo
</div>
<h3>.setZoom([page:todo zoom]) [page:todo]</h3>
<div>
zoom -- todo
</div>
<div>
todo
</div>
<h3>.setLens([page:todo focalLength], [page:todo frameHeight]) [page:todo]</h3>
<div>
focalLength -- todo <br />
frameHeight -- todo
</div>
<div>
todo
</div>
<h3>.toFrontView() [page:todo]</h3>
<div>
todo
</div>
<h3>.toLeftView() [page:todo]</h3>
<div>
todo
</div>
<h3>.updateProjectionMatrix() [page:todo]</h3>
<div>
todo
</div>
<h3>.toTopView() [page:todo]</h3>
<div>
todo
</div>
<h3>.toOrthographic() [page:todo]</h3>
<div>
todo
</div>
<h3>.setSize([page:todo width], [page:todo height]) [page:todo]</h3>
<div>
width -- todo <br />
height -- todo
</div>
<div>
todo
</div>
<h3>.toPerspective() [page:todo]</h3>
<div>
todo
</div>
<h3>.toRightView() [page:todo]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo near], [page:todo far], [page:todo cubeResolution])</h3>
<div>
near -- todo <br />
far -- todo <br />
cubeResolution -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:WebGLRenderTargetCube renderTarget]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.updateCubeMap([page:todo renderer], [page:todo scene]) [page:todo]</h3>
<div>
renderer -- todo <br />
scene -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">An extensible curve object which contains methods for interpolation.</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.getPoint ( t )</h3>
<div>Returns a vector for point t of the curve where t is between 0 and 1</div>
<h3>.getPointAt ( u )</h3>
<div>Returns a vector for point at relative position in curve according to arc length</div>
<h3>.getPoints ( divisions )</h3>
<div>Get sequence of points using getPoint( t ) </div>
<h3>.getSpacedPoints ( divisions )</h3>
<div>Get sequence of equi-spaced points using getPointAt( u )</div>
<h3>.getLength ()</h3>
<div>Get total curve arc length</div>
<h3>.getLengths ( divisions )</h3>
<div>Get list of cumulative segment lengths</div>
<h3>.updateArcLengths ()</h3>
<div>Update the cumlative segment distance cache</div>
<h3>.getUtoTmapping ( u, distance )</h3>
<div>Given u ( 0 .. 1 ), get a t to find p. This gives you points which are equidistant</div>
<h3>.getTangent ( t )</h3>
<div>Returns a unit vector tangent at t. If the subclassed curve do not implement its tangent derivation, 2 points a small delta apart will be used to find its gradient which seems to give a reasonable approximation</div>
<h3>.getTangentAt ( u )</h3>
<div>Returns tangent at equidistant point u on the curve</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:array curves]</h3>
<div>
todo
</div>
<h3>.[page:array bends]</h3>
<div>
todo
</div>
<h3>.[page:boolean autoClose]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.getWrapPoints([page:todo oldPts], [page:todo path]) [page:todo]</h3>
<div>
oldPts -- todo <br />
path -- todo
</div>
<div>
todo
</div>
<h3>.createPointsGeometry([page:todo divisions]) [page:todo]</h3>
<div>
divisions -- todo
</div>
<div>
todo
</div>
<h3>.addWrapPath([page:todo bendpath]) [page:todo]</h3>
<div>
bendpath -- todo
</div>
<div>
todo
</div>
<h3>.createGeometry([page:todo points]) [page:todo]</h3>
<div>
points -- todo
</div>
<div>
todo
</div>
<h3>.add([page:todo curve]) [page:todo]</h3>
<div>
curve -- todo
</div>
<div>
todo
</div>
<h3>.getTransformedSpacedPoints([page:todo segments], [page:todo bends]) [page:todo]</h3>
<div>
segments -- todo <br />
bends -- todo
</div>
<div>
todo
</div>
<h3>.createSpacedPointsGeometry([page:todo divisions]) [page:todo]</h3>
<div>
divisions -- todo
</div>
<div>
todo
</div>
<h3>.closePath() [page:todo]</h3>
<div>
todo
</div>
<h3>.getBoundingBox() [page:todo]</h3>
<div>
todo
</div>
<h3>.getCurveLengths() [page:todo]</h3>
<div>
todo
</div>
<h3>.getTransformedPoints([page:todo segments], [page:todo bends]) [page:todo]</h3>
<div>
segments -- todo <br />
bends -- todo
</div>
<div>
todo
</div>
<h3>.checkConnection() [page:todo]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:Vector3 scaleWorld]</h3>
<div>
todo
</div>
<h3>.[page:Vector3 translationWorld]</h3>
<div>
todo
</div>
<h3>.[page:Quaternion rotationWorld]</h3>
<div>
todo
</div>
<h3>.[page:Vector3 translationObject]</h3>
<div>
todo
</div>
<h3>.[page:Vector3 scaleObject]</h3>
<div>
todo
</div>
<h3>.[page:Quaternion rotationObject]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">A 2d path representation, comprising of points, lines, and cubes, similar to the html5 2d canvas api. It extends CurvePath.</div>
<h2>Constructor</h2>
<h3>[name]([page:todo points])</h3>
<div>
points -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:array actions]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.fromPoints ( vectors ) </h3>
<div>todo</div>
<h3>.moveTo ( x, y ) </h3>
<div>todo</div>
<h3>.lineTo ( x, y ) </h3>
<div>todo</div>
<h3>.quadraticCurveTo ( aCPx, aCPy, aX, aY ) </h3>
<div>todo</div>
<h3>.bezierCurveTo ( aCP1x, aCP1y, aCP2x, aCP2y, aX, aY ) </h3>
<div>todo</div>
<h3>.splineThru ( pts /*Array of Vector*/ ) </h3>
<div>todo</div>
<h3>.arc ( aX, aY, aRadius, aStartAngle, aEndAngle, aClockwise ) </h3>
<div>todo</div>
<h3>.absarc ( aX, aY, aRadius, aStartAngle, aEndAngle, aClockwise ) </h3>
<div>todo</div>
<h3>.ellipse ( aX, aY, xRadius, yRadius, aStartAngle, aEndAngle, aClockwise ) </h3>
<div>todo</div>
<h3>.absellipse ( aX, aY, xRadius, yRadius, aStartAngle, aEndAngle, aClockwise ) </h3>
<div>todo</div>
<h3>.toShapes () </h3>
<div>todo</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">Defines a 2d shape plane using paths.</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:array holes]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.makeGeometry([page:todo options]) [page:todo]</h3>
<div>
options -- todo
</div>
<div>
todo
</div>
<h3>.extractAllPoints([page:todo divisions]) [page:todo]</h3>
<div>
divisions -- todo
</div>
<div>
todo
</div>
<h3>.extrude([page:todo options]) [page:todo]</h3>
<div>
options -- todo
</div>
<div>
todo
</div>
<h3>.extractPoints([page:todo divisions]) [page:todo]</h3>
<div>
divisions -- todo
</div>
<div>
todo
</div>
<h3>.extractAllSpacedPoints([page:todo divisions]) [page:todo]</h3>
<div>
divisions -- todo
</div>
<div>
todo
</div>
<h3>.getPointsHoles([page:todo divisions]) [page:todo]</h3>
<div>
divisions -- todo
</div>
<div>
todo
</div>
<h3>.getSpacedPointsHoles([page:todo divisions]) [page:todo]</h3>
<div>
divisions -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">CircleGeometry is a simple shape of Euclidean geometry. It is contructed from a number of triangular segments that are oriented around a central point and extend as far out as a given radius. It is built counter-clockwise from a start angle and a given central angle. It can also be used to create regular polygons, where the number of segments determines the number of sides.
</div>
<h2>Constructor</h2>
<h3>[name]([page:Float radius], [page:Integer segments], [page:Float thetaStart], [page:Float thetaLength])</h3>
<div>
radius — Radius of the circle, default = 50.<br />
segments — Number of segments (triangles), minimum = 3, default = 8.<br />
thetaStart — Start angle for first segment, default = 0 (three o'clock position).<br />
thetaLength — The central angle, often called theta, of the circular sector. The default is 2*Pi, which makes for a complete circle.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:Array vertices])</h3>
<div>
vertices — todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">CubeGeometry is the quadrilateral primitive geometry class. It is typically used for creating a cube or irregular quadrilateral of the dimensions provided with the 'width', 'height', and 'depth' constructor arguments.</div>
<h2>Constructor</h2>
<h3>[name]([page:Float width], [page:Float height], [page:Float depth], [page:Integer widthSegments], [page:Integer heightSegments], [page:Integer depthSegments])</h3>
<div>
width — Width of the sides on the X axis.<br />
height — Height of the sides on the Y axis.<br />
depth — Depth of the sides on the Z axis.<br />
widthSegments — Optional. Number of segmented faces along the width of the sides. Default is 1.<br />
heightSegments — Optional. Number of segmented faces along the height of the sides. Default is 1.<br />
depthSegments — Optional. Number of segmented faces along the depth of the sides. Default is 1.
</div>
<h2>Properties</h2>
<div>
Each of the contructor parameters is accessible as a property of the same name. Any modification of these properties after instantiation does not change the geometry.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:Float radiusTop], [page:Float radiusBottom], [page:Float height], [page:Integer radiusSegments], [page:Integer heightSegments], [page:Boolean openEnded])</h3>
<div>
radiusTop — Radius of the cylinder at the top. Default is 20.<br />
radiusBottom — Radius of the cylinder at the bottom. Default is 20.<br />
height — Height of the cylinder. Default is 100.<br />
radiusSegments — Number of segmented faces around the circumference of the cylinder. Default is 8<br />
heightSegments — Number of rows of faces along the height of the cylinder. Default is 1.<br />
openEnded — A Boolean indicating whether the ends of the cylinder are open or capped. Default is false, meaning capped.
</div>
<h2>Properties</h2>
<div>
Each of the contructor parameters is accessible as a property of the same name. Any modification of these properties after instantiation does not change the geometry.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">Creates extruded geometry from a path shape</div>
<h2>Constructor</h2>
<h3>[name]([page:todo shapes], [page:Object options])</h3>
<div>
shapes — todo <br />
options — todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h2>Methods</h2>
<h3>.addShapeList ([page:todo shapes], [page:Object options])</h3>
<div>
shapes — todo <br />
options — todo
</div>
<div>todo</div>
<h3>.addShape ([page:todo shape], [page:Object options])</h3>
<div>
shape — todo <br />
options — todo
</div>
<div>todo</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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:PolyhedronGeometry] &rarr;
<h1>[name]</h1>
<div class="desc">A class for generating an icosahedron geometry.</div>
<h2>Constructor</h2>
<h3>[name]([page:Float radius], [page:Integer detail])</h3>
<div>
radius — Default is 1. <br />
detail — Default is 0. Setting this to a value greater than 0 adds more vertices making it no longer an icosahedron. When detail is greater than 1, it's effectively a sphere.
</div>
<h2>Properties</h2>
<div>
Each of the contructor parameters is accessible as a property of the same name. Any modification of these properties after instantiation does not change the geometry.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:Array points], [page:Integer segments], [page:Float phiStart], [page:Float phiLength])</h3>
<div>
points — todo <br />
segments — todo <br />
phiStart — todo <br />
phiLength — todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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:PolyhedronGeometry] &rarr;
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:Float radius], [page:Integer detail])</h3>
<div>
radius — Radius of the octahedron. Default is 1.<br />
detail — Default is 0. Setting this to a value greater than zero add vertices making it no longer an octahedron.
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo func], [page:todo slices], [page:todo stacks], [page:Boolean useTris])</h3>
<div>
func — todo <br />
slices — todo <br />
stacks — todo <br />
useTris — todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:Float width], [page:Float height], [page:Integer widthSegments], [page:Integer heightSegments])</h3>
<div>
width — Width along the X axis.<br />
height — Height along the Y axis.<br />
widthSegments — Optional. Default is 1. <br />
heightSegments — Optional. Default is 1.
</div>
<h2>Properties</h2>
<div>
Each of the contructor parameters is accessible as a property of the same name. Any modification of these properties after instantiation does not change the geometry.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:Array vertices], [page:Array faces], [page:Float radius], [page:Integer detail])</h3>
<div>
vertices — todo <br />
faces — todo <br />
radius — todo <br />
detail — todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">A class for generating a two-dimensional ring geometry.</div>
<h2>Constructor</h2>
<h3>[name]([page:Float innerRadius], [page:Float outerRadius], [page:Integer thetaSegments], [page:Integer phiSegments], [page:Float thetaStart], [page:Float thetaLength])</h3>
<div>
innerRadius — Default is 0, but it doesn't work right when innerRadius is set to 0.<br />
outerRadius — Default is 50. <br />
thetaSegments — Number of segments. A higher number means the ring will be more round. Minimum is 3. Default is 8. <br />
phiSegments — Minimum is 3. Default is 8.<br />
thetaStart — Starting angle. Default is 0. <br />
thetaLength — Central angle. Default is Math.PI * 2.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:Array shapes], [page:Object options])</h3>
<div>
shapes — todo <br />
options — todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:Object shapebb]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.addShapeList([page:todo shapes], [page:Object options]) [page:this]</h3>
<div>
shapes — todo <br />
options — todo
</div>
<div>
todo
</div>
<h3>.addShape([page:todo shape], [page:Object options])</h3>
<div>
shape — todo <br />
options — todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">A class for generating sphere geometries</div>
<h2>Constructor</h2>
<h3>[name]([page:Float radius], [page:Integer widthSegments], [page:Integer heightSegments], [page:Float phiStart], [page:Float phiLength], [page:Float thetaStart], [page:Float thetaLength])</h3>
<div>
radius — sphere radius. Default is 50.<br />
widthSegments — number of horizontal segments. Minimum value is 3, and the default is 8.<br />
heightSegments — number of vertical segments. Minimum value is 2, and the default is 6.<br />
phiStart — specify horizontal starting angle. Default is 0.<br />
phiLength — specify horizontal sweep angle size. Default is Math.PI * 2.<br />
thetaStart — specify vertical starting angle. Default is 0.<br />
thetaLength — specify vertical sweep angle size. Default is Math.PI.<br />
</div>
<div>
The geometry is created by sweeping and calculating vertexes around the Y axis (horizontal sweep) and the Z axis (vertical sweep). Thus, incomplete spheres (akin to <em>'sphere slices'</em>) can be created through the use of different values of phiStart, phiLength, thetaStart and thetaLength, in order to define the points in which we start (or end) calculating those vertices.
</div>
<h2>Properties</h2>
<div>
Each of the contructor parameters is accessible as a property of the same name. Any modification of these properties after instantiation does not change the geometry.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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:PolyhedronGeometry] &rarr;
<h1>[name]</h1>
<div class="desc">A class for generating a tetrahedron geometries.</div>
<h2>Constructor</h2>
<h3>[name]([page:Float radius], [page:Integer detail])</h3>
<div>
radius — Radius of the tetrahedron. Default is 1.<br />
detail — Default is 0. Setting this to a value greater than 0 adds vertices making it no longer a tetrahedron.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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:ExtrudeGeometry] &rarr;
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:String text], [page:Object parameters])</h3>
<div>
text — todo <br />
parameters — Object that can contain the following parameters.
<ul>
<li>size — Float. Size of the text.</li>
<li>height — Float. Thickness to extrude text. Default is 50.</li>
<li>curveSegments — Integer. Number of points on the curves.</li>
<li>font — String. Font name.</li>
<li>weight — String. Font weight (normal, bold).</li>
<li>style — String. Font style (normal, italics).</li>
<li>bevelEnabled — Boolean. Turn on bevel. Default is False.</li>
<li>bevelThickness — Float. How deep into text bevel goes. Default is 10.</li>
<li>bevelSize — Float. How far from text outline is bevel. Default is 8.</li>
</ul>
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">Creates a torus.</div>
<h2>Constructor</h2>
<h3>[name]([page:Float radius], [page:Float tube], [page:Integer radialSegments], [page:Integer tubularSegments], [page:Float arc])</h3>
<div>
radius — Default is 100. <br />
tube — Diameter of the tube. Default is 40. <br />
radialSegments — Default is 8 <br />
tubularSegments — Default is 6. <br />
arc — Central angle. Default is Math.PI * 2.
</div>
<h2>Properties</h2>
<div>
Each of the contructor parameters is accessible as a property of the same name. Any modification of these properties after instantiation does not change the geometry.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">Creates a torus knot, the particular shape of which is defined by a pair of coprime integers, p and q. If p and q are not coprime, the result will be a torus link.</div>
<h2>Constructor</h2>
<h3>[name]([page:Float radius], [page:Float tube], [page:Integer radialSegments], [page:Integer tubularSegments], [page:Integer p], [page:Integer q], [page:Float heightScale])</h3>
<div>
radius — Default is 100. <br />
tube — Default is 40. <br />
radialSegments — Default is 64. <br />
tubularSegments — Default is 8. <br />
p — Default is 2. <br />
q — Default is 3. <br />
heightScale — Default is 1.
</div>
<h2>Properties</h2>
<div>
Each of the contructor parameters is accessible as a property of the same name. Any modification of these properties after instantiation does not change the geometry.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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] &rarr;
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo path], [page:Integer segments], [page:Float radius], [page:Integer radiusSegments], [page:Boolean closed], [page:Boolean debug])</h3>
<div>
path — todo <br />
segments — todo <br />
radius — todo <br />
radiusSegments — todo <br />
closed — todo <br />
debug — todo
</div>
<h2>Properties</h2>
<h3>.[page:todo path]</h3>
<div>
todo
</div>
<h3>.[page:Integer segments]</h3>
<div>
todo
</div>
<h3>.[page:Float radius]</h3>
<div>
todo
</div>
<h3>.[page:Integer radiusSegments]</h3>
<div>
todo
</div>
<h3>.[page:Boolean closed]</h3>
<div>
todo
</div>
<h3>.[page:Array tangents]</h3>
<div>
todo
</div>
<h3>.[page:Array normals]</h3>
<div>
todo
</div>
<h3>.[page:Array binormals]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.FrenetFrames([page:todo path], [page:Integer segments], [page:Boolean closed])</h3>
<div>
path — todo <br />
segments — todo <br />
closed — todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo dir], [page:todo origin], [page:todo length], [page:todo hex])</h3>
<div>
dir -- todo <br />
origin -- todo <br />
length -- todo <br />
hex -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:Line line]</h3>
<div>
todo
</div>
<h3>.[page:Mesh cone]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.setColor([page:todo hex]) [page:todo]</h3>
<div>
hex -- todo
</div>
<div>
todo
</div>
<h3>.setLength([page:todo length]) [page:todo]</h3>
<div>
length -- todo
</div>
<div>
todo
</div>
<h3>.setDirection([page:todo dir]) [page:todo]</h3>
<div>
dir -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo size])</h3>
<div>
size -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo size])</h3>
<div>
size -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:array vertices]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.update([page:todo object]) [page:todo]</h3>
<div>
object -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo camera])</h3>
<div>
camera -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:object pointMap]</h3>
<div>
todo
</div>
<h3>.[page:PerspectiveCamera camera]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.update() [page:todo]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo light], [page:todo sphereSize])</h3>
<div>
light -- todo <br />
sphereSize -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:Mesh lightSphere]</h3>
<div>
todo
</div>
<h3>.[page:DirectionalLight light]</h3>
<div>
todo
</div>
<h3>.[page:Line targetLine]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.update() [page:todo]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo size], [page:todo step])</h3>
<div>
size -- todo <br />
step -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo light], [page:todo sphereSize], [page:todo arrowLength], [page:todo domeSize])</h3>
<div>
light -- todo <br />
sphereSize -- todo <br />
arrowLength -- todo <br />
domeSize -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:Mesh lightSphere]</h3>
<div>
todo
</div>
<h3>.[page:HemisphereLight light]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.update() [page:todo]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo light], [page:todo sphereSize])</h3>
<div>
light -- todo <br />
sphereSize -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:Mesh lightSphere]</h3>
<div>
todo
</div>
<h3>.[page:PointLight light]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.update() [page:todo]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo light], [page:todo sphereSize])</h3>
<div>
light -- todo <br />
sphereSize -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:Mesh lightSphere]</h3>
<div>
todo
</div>
<h3>.[page:SpotLight light]</h3>
<div>
todo
</div>
<h3>.[page:Mesh lightCone]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.update() [page:todo]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.render([page:todo renderCallback]) [page:todo]</h3>
<div>
renderCallback -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo texture], [page:todo size], [page:todo distance], [page:todo blending], [page:todo color])</h3>
<div>
texture -- todo <br />
size -- todo <br />
distance -- todo <br />
blending -- todo <br />
color -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:array lensFlares]</h3>
<div>
todo
</div>
<h3>.[page:Vector3 positionScreen]</h3>
<div>
todo
</div>
<h3>.[page:todo customUpdateCallback]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.updateLensFlares() [page:todo]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]([page:todo geometry], [page:todo material])</h3>
<div>
geometry -- todo <br />
material -- todo
</div>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:object animationsMap]</h3>
<div>
todo
</div>
<h3>.[page:array animationsList]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.setAnimationWeight([page:todo name], [page:todo weight]) [page:todo]</h3>
<div>
name -- todo <br />
weight -- todo
</div>
<div>
todo
</div>
<h3>.setAnimationFPS([page:todo name], [page:todo fps]) [page:todo]</h3>
<div>
name -- todo <br />
fps -- todo
</div>
<div>
todo
</div>
<h3>.createAnimation([page:todo name], [page:todo start], [page:todo end], [page:todo fps]) [page:todo]</h3>
<div>
name -- todo <br />
start -- todo <br />
end -- todo <br />
fps -- todo
</div>
<div>
todo
</div>
<h3>.playAnimation([page:todo name]) [page:todo]</h3>
<div>
name -- todo
</div>
<div>
todo
</div>
<h3>.update([page:todo delta]) [page:todo]</h3>
<div>
delta -- todo
</div>
<div>
todo
</div>
<h3>.autoCreateAnimations([page:todo fps]) [page:todo]</h3>
<div>
fps -- todo
</div>
<div>
todo
</div>
<h3>.setAnimationDuration([page:todo name], [page:todo duration]) [page:todo]</h3>
<div>
name -- todo <br />
duration -- todo
</div>
<div>
todo
</div>
<h3>.setAnimationDirectionForward([page:todo name]) [page:todo]</h3>
<div>
name -- todo
</div>
<div>
todo
</div>
<h3>.getAnimationDuration([page:todo name]) [page:todo]</h3>
<div>
name -- todo
</div>
<div>
todo
</div>
<h3>.getAnimationTime([page:todo name]) [page:todo]</h3>
<div>
name -- todo
</div>
<div>
todo
</div>
<h3>.setAnimationDirectionBackward([page:todo name]) [page:todo]</h3>
<div>
name -- todo
</div>
<div>
todo
</div>
<h3>.setAnimationTime([page:todo name], [page:todo time]) [page:todo]</h3>
<div>
name -- todo <br />
time -- todo
</div>
<div>
todo
</div>
<h3>.stopAnimation([page:todo name]) [page:todo]</h3>
<div>
name -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Properties</h2>
<h3>.[page:boolean enabled]</h3>
<div>
todo
</div>
<h3>.[page:object renderTarget]</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.init([page:todo renderer]) [page:todo]</h3>
<div>
renderer -- todo
</div>
<div>
todo
</div>
<h3>.update([page:todo scene], [page:todo camera]) [page:todo]</h3>
<div>
scene -- todo <br />
camera -- todo
</div>
<div>
todo
</div>
<h3>.render([page:todo scene], [page:todo camera]) [page:todo]</h3>
<div>
scene -- todo <br />
camera -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.init([page:todo renderer]) [page:todo]</h3>
<div>
renderer -- todo
</div>
<div>
todo
</div>
<h3>.render([page:todo scene], [page:todo camera], [page:todo viewportWidth], [page:todo viewportHeight]) [page:todo]</h3>
<div>
scene -- todo <br />
camera -- todo <br />
viewportWidth -- todo <br />
viewportHeight -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.init([page:todo renderer]) [page:todo]</h3>
<div>
renderer -- todo
</div>
<div>
todo
</div>
<h3>.update([page:todo scene], [page:todo camera]) [page:todo]</h3>
<div>
scene -- todo <br />
camera -- todo
</div>
<div>
todo
</div>
<h3>.render([page:todo scene], [page:todo camera]) [page:todo]</h3>
<div>
scene -- todo <br />
camera -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Constructor</h2>
<h3>[name]()</h3>
<div>
todo
</div>
<h2>Methods</h2>
<h3>.init([page:todo renderer]) [page:todo]</h3>
<div>
renderer -- todo
</div>
<div>
todo
</div>
<h3>.render([page:todo scene], [page:todo camera], [page:todo viewportWidth], [page:todo viewportHeight]) [page:todo]</h3>
<div>
scene -- todo <br />
camera -- todo <br />
viewportWidth -- todo <br />
viewportHeight -- todo
</div>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Properties</h2>
<h3>.[page:object lensFlare]</h3>
<div>
todo
</div>
<h3>.[page:object lensFlareVertexTexture]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">todo</div>
<h2>Properties</h2>
<h3>.[page:object sprite]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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:Object3D] &rarr; [page:Light] &rarr;
<h1>[name]</h1>
<div class="desc">
This light's color gets applied to all the objects in the scene globally.
</div>
<h2>Example</h2>
<code>var light = new THREE.AmbientLight( 0x404040 ); // soft white light
scene.add( light );</code>
<h2>Constructor</h2>
<h3>[name]( [page:Float hex] )</h3>
<div>
[page:Integer hex] — Numeric value of the RGB component of the color.
</div>
<div>
This creates a Ambientlight with a color.
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
<!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>
<h1>[name]</h1>
<div class="desc">This illuminates the scene from a complete surface. This light only works in the [page:WebGLDeferredRenderer deferredrenderer]. </div>
<h2>Example</h2>
<code>areaLight1 = new THREE.AreaLight( 0xffffff, 1 );
areaLight1.position.set( 0.0001, 10.0001, -18.5001 );
areaLight1.rotation.set( -0.74719, 0.0001, 0.0001 );
areaLight1.width = 10;
areaLight1.height = 1;
scene.add( areaLight1 );</code>
<h2>Constructor</h2>
<h3>[name]( [page:Float hex], [page:Float intensity])</h3>
<div>
[page:Integer hex] — Numeric value of the RGB component of the color.<br />
[page:Integer intensity] — The intensity of the light.
</div>
<div>
This creates a arealight with color.
</div>
<h2>Properties</h2>
<h3>.[page:Vector3 right]</h3>
<div>
todo
</div>
<h3>.[page:Vector3 normal]</h3>
<div>
todo
</div>
<h3>.[page:number quadraticAttenuation]</h3>
<div>
todo
</div>
<h3>.[page:number height]</h3>
<div>
todo
</div>
<h3>.[page:number linearAttenuation]</h3>
<div>
todo
</div>
<h3>.[page:number width]</h3>
<div>
todo
</div>
<h3>.[page:number intensity]</h3>
<div>
todo
</div>
<h3>.[page:number constantAttenuation]</h3>
<div>
todo
</div>
<h2>Source</h2>
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
</body>
</html>
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册