--- /dev/null
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8" />
+ <base href="../../" />
+ <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 the base class for most objects in three.js and provides a set of properties and methods
+ for manipulating objects in 3D space.<br /><br />
+
+ Note that this can be used for grouping objects via the [page:.add]( object ) method
+ which adds the object as a child, however it is better to use [page:Group] for this.
+ </div>
+
+
+ <h2>Constructor</h2>
+
+
+ <h3>[name]()</h3>
+ <div>
+ The constructor takes no arguments.
+ </div>
+
+
+ <h2>Properties</h2>
+
+ <h3>[property:Boolean castShadow]</h3>
+ <div>Whether the object gets rendered into shadow map. Default is *false*.</div>
+
+ <h3>[property:Object3D children]</h3>
+ <div>Array with object's children. See [page:Group] for info on manually grouping objects.</div>
+
+ <h3>[property:Boolean frustumCulled]</h3>
+ <div>
+ When this is set, it checks every frame if the object is in the frustum of the camera before rendering the object.
+ Otherwise the object gets renderered every frame even if it isn't visible. Default is *true*.
+ </div>
+
+ <h3>[property:Integer id]</h3>
+ <div>readonly – Unique number for this object instance.</div>
+
+ <h3>[property:Boolean isObject]</h3>
+ <div>
+ Used to check whether this or derived classes are Object3Ds. Default is *true*.<br /><br />
+
+ You should not change this, as it is used internally for optimisation.
+ </div>
+
+ <h3>[property:Layers layers]</h3>
+ <div>
+ The layer membership of the object. The object is only visible if it has at least one
+ layer in common with the [page:Camera] in use.
+ </div>
+
+ <h3>[property:Matrix4 matrix]</h3>
+ <div>The local transform matrix.</div>
+
+ <h3>[property: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. Default is [page:Object3D.DefaultMatrixAutoUpdate] (true).
+ </div>
+
+ <h3>[property:Matrix4 matrixWorld]</h3>
+ <div>
+ The global transform of the object. If the Object3D has no parent, then it's identical to
+ the local transform [page:.matrix].
+ </div>
+
+ <h3>[property:Boolean matrixWorldNeedsUpdate]</h3>
+ <div>
+ When this is set, it calculates the matrixWorld in that frame and resets this property
+ to false. Default is *false*.
+ </div>
+
+ <h3>[property:Matrix4 modelViewMatrix]</h3>
+ <div>This is passed to the shader and used to calculate the position of the object.</div>
+
+ <h3>[property:String name]</h3>
+ <div>Optional name of the object (doesn't need to be unique). Default is an empty string.</div>
+
+ <h3>[property:Matrix3 normalMatrix]</h3>
+ <div>
+ This is passed to the shader and used to calculate lighting for the object. It is the transpose of the inverse of the upper left 3x3 sub-matrix of this object's modelViewMatrix.<br /><br />
+
+ The reason for this special matrix is that simply using the modelViewMatrix could result in a non-unit length of normals (on scaling) or in a non-perpendicular direction (on non-uniform scaling).<br /><br />
+
+ On the other hand the translation part of the modelViewMatrix is not relevant for the calculation of normals. Thus a Matrix3 is sufficient.
+ </div>
+
+ <h3>[property:function onAfterRender]</h3>
+ <div>
+ An optional callback that is executed immediately after the Object3D is rendered.
+ This function is called with the following parameters: renderer, scene, camera, geometry,
+ material, group.
+ </div>
+
+ <h3>[property:function onBeforeRender]</h3>
+ <div>
+ An optional callback that is executed immediately before the Object3D is rendered.
+ This function is called with the following parameters: renderer, scene, camera, geometry,
+ material, group.
+ </div>
+
+ <h3>[property:Object3D parent]</h3>
+ <div>Object's parent in the [link:https://en.wikipedia.org/wiki/Scene_graph scene graph].</div>
+
+ <h3>[property:Vector3 position]</h3>
+ <div>The object's local position.</div>
+
+ <h3>[property:Quaternion quaternion]</h3>
+ <div>Object's local rotation as a [page:Quaternion Quaternion].</div>
+
+ <h3>[property:Boolean receiveShadow]</h3>
+ <div>Whether the material receives shadows. Default is *false*.</div>
+
+ <h3>[property:Number renderOrder]</h3>
+ <div>
+ This value allows the default rendering order of [link:https://en.wikipedia.org/wiki/Scene_graph scene graph]
+ objects to be overridden although opaque and transparent objects remain sorted independently.
+ Sorting is from lowest to highest renderOrder. Default value is *0*.
+ </div>
+
+ <h3>[property:Euler rotation]</h3>
+ <div>
+ Object's local rotation (see [link:https://en.wikipedia.org/wiki/Euler_angles Euler angles]), in radians.
+ </div>
+
+ <h3>[property:Vector3 scale]</h3>
+ <div>
+ The object's local [property:Vector3 scale]. Default is [page:Vector3]( 1, 1, 1 ).
+ </div>
+
+ <h3>[property:Vector3 up]</h3>
+ <div>
+ This is used by the [page:.lookAt lookAt] method, for example, to determine the orientation of the result.<br />
+ Default is [page:Object3D.DefaultUp] - that is, ( 0, 1, 0 ).
+ </div>
+
+ <h3>[property:object userData]</h3>
+ <div>
+ An object that can be used to store custom data about the Object3D. It should not hold
+ references to functions as these will not be cloned.
+ </div>
+
+ <h3>[property:String uuid]</h3>
+ <div>
+ [link:http://en.wikipedia.org/wiki/Universally_unique_identifier UUID] of this object instance.
+ This gets automatically assigned, so this shouldn't be edited.
+ </div>
+
+ <h3>[property:Boolean visible]</h3>
+ <div>Object gets rendered if *true*. Default is *true*.</div>
+
+
+
+
+ <h2>Static Properties</h2>
+ <div>
+ Static properties and methods are defined per class rather than per instance of that class.
+ This means that changing [page:Object3D.DefaultUp] or [page:Object3D.DefaultMatrixAutoUpdate]
+ will change the values of [page:.up up] and [page:.matrixAutoUpdate matrixAutoUpdate] for
+ <em>every</em> instance of Object3D (or derived classes) created after the change has
+ been made (already created Object3Ds will not be affected).
+ </div>
+
+ <h3>[property:Vector3 DefaultUp]</h3>
+ <div>
+ The default [page:.up up] direction for objects, also used as the default position for [page:DirectionalLight],
+ [page:HemisphereLight] and [page:Spotlight] (which creates lights shining from the top down).<br />
+ Set to ( 0, 1, 0 ) by default.
+ </div>
+
+ <h3>[property:Vector3 DefaultMatrixAutoUpdate]</h3>
+ <div>
+ The default setting for [page:.matrixAutoUpdate matrixAutoUpdate] for newly created Object3Ds.<br />
+
+ </div>
+
+
+ <h2>Methods</h2>
+
+ <h3>[page:EventDispatcher EventDispatcher] methods are available on this class.</h3>
+
+ <h3>[method:null add]( [page:Object3D object], ... )</h3>
+ <div>
+ Adds *object* as child of this object. An arbitrary number of objects may be added.<br /><br />
+
+ See [page:Group] for info on manually grouping objects.
+ </div>
+
+ <h3>[method:null applyMatrix]( [page:Matrix4 matrix] )</h3>
+ <div>Applies the matrix transform to the object and updates the object's position, rotation and scale.</div>
+
+ <h3>[method:Object3D applyQuaternion]( [page:Quaternion quaternion] )</h3>
+ <div>Applies the rotation represented by the quaternion to the object.</div>
+
+ <h3>[method:Object3D clone]( [page:Boolean recursive] )</h3>
+ <div>
+ recursive -- if true, descendants of the object are also cloned. Default is true.<br /><br />
+
+ Returns a clone of this object and optionally all descendants.
+ </div>
+
+ <h3>[method:Object3D copy]( [page:Object3D object], [page:Boolean recursive] )</h3>
+ <div>
+ recursive -- if true, descendants of the object are also copied. Default is true.<br /><br />
+
+ Copy the given object into this object.
+ </div>
+
+ <h3>[method:Object3D getObjectById]( [page:Integer id] )</h3>
+ <div>
+ id -- Unique number of the object instance<br /><br />
+
+ Searches through the object's children and returns the first with a matching id.<br />
+ Note that ids are assigned in chronological order: 1, 2, 3, ..., incrementing by one for each new object.
+ </div>
+
+ <h3>[method:Object3D getObjectByName]( [page:String name] )</h3>
+ <div>
+ name -- String to match to the children's Object3D.name property. <br /><br />
+
+ Searches through the object's children and returns the first with a matching name.<br />
+ Note that for most objects the [property:name] is an empty string by default. You will
+ have to set it manually to make use of this method.
+ </div>
+
+ <h3>[method:Object3D getObjectByProperty]( [page:String name], [page:Float value] )</h3>
+ <div>
+ name -- the property name to search for. <br />
+ value -- value of the given property. <br /><br />
+
+ Searches through the object's children and returns the first with a property that matches the value given.
+ </div>
+
+ <h3>[method:Vector3 getWorldPosition]( [page:Vector3 optionalTarget] )</h3>
+ <div>
+ optionalTarget — (optional) target to set the result. Otherwise, a new [page:Vector3] is instantiated. <br /><br />
+
+ Returns a vector representing the position of the object in world space.
+ </div>
+
+ <h3>[method:Quaternion getWorldQuaternion]( [page:Quaternion optionalTarget] )</h3>
+ <div>
+ optionalTarget — (optional) if specified, the result will be copied into this Quaternion,
+ otherwise a new Quaternion will be created. <br /><br />
+
+ Returns a quaternion representing the rotation of the object in world space.
+ </div>
+
+ <h3>[method:Euler getWorldRotation]( [page:Euler optionalTarget] )</h3>
+ <div>
+ optionalTarget — (optional) if specified, the result will be copied into this Euler,
+ otherwise a new Euler will be created. <br /><br />
+
+ Returns the euler angles representing the rotation of the object in world space.
+ </div>
+
+ <h3>[method:Vector3 getWorldScale]( [page:Vector3 optionalTarget] )</h3>
+ <div>
+ [page:Vector3 optionalTarget] — (optional) if specified, the result will be copied into this Vector3,
+ otherwise a new Vector3 will be created. <br /><br />
+
+ Returns a vector of the scaling factors applied to the object for each axis in world space.
+ </div>
+
+ <h3>[method:Vector3 getWorldDirection]( [page:Vector3 optionalTarget] )</h3>
+ <div>
+ [page:Vector3 optionalTarget] — (optional) if specified, the result will be copied into this Vector3,
+ otherwise a new Vector3 will be created. <br /><br />
+
+ Returns a vector representing the direction of object's positive z-axis in world space.
+ </div>
+
+
+ <h3>[method:Vector3 localToWorld]( [page:Vector3 vector] )</h3>
+ <div>
+ vector - A vector representing a position in local (object) space.<br /><br />
+
+ Converts the vector from local space to world space.
+ </div>
+
+ <h3>[method:null lookAt]( [page:Vector3 vector] )</h3>
+ <div>
+ vector - A vector representing a position in world space.<br /><br />
+
+ Rotates the object to face a point in world space.
+ </div>
+
+ <h3>[method:Array raycast]( [page:Raycaster raycaster], [page:Array intersects] )</h3>
+ <div>
+ Abstract (empty) method to get intersections between a casted ray and this object.
+ Subclasses such as [page:Mesh], [page:Line], and [page:Points] implement this method in order
+ to use raycasting.
+ </div>
+
+ <h3>[method:null remove]( [page:Object3D object], ... )</h3>
+ <div>
+ Removes *object* as child of this object. An arbitrary number of objects may be removed.
+ </div>
+
+ <h3>[method:Object3D rotateOnAxis]( [page:Vector3 axis], [page:Float angle] )</h3>
+ <div>
+ axis -- A normalized vector in object space. <br />
+ angle -- The angle in radians.<br /><br />
+
+ Rotate an object along an axis in object space. The axis is assumed to be normalized.
+ </div>
+
+ <h3>[method:null rotateX]( [page:Float rad] )</h3>
+ <div>
+ rad - the angle to rotate in radians.<br /><br />
+
+ Rotates the object around x axis in local space.
+ </div>
+
+ <h3>[method:null rotateY]( [page:Float rad] )</h3>
+ <div>
+ rad - the angle to rotate in radians.<br /><br />
+
+ Rotates the object around y axis in local space.
+ </div>
+
+ <h3>[method:null rotateZ]( [page:Float rad] )</h3>
+ <div>
+ rad - the angle to rotate in radians.<br /><br />
+
+ Rotates the object around z axis in local space.
+ </div>
+
+ <h3>[method:null setRotationFromAxisAngle]( [page:Vector3 axis], [page:Float angle] )</h3>
+ <div>
+ axis -- A normalized vector in object space. <br />
+ angle -- angle in radians<br /><br />
+
+ Calls [page:Quaternion.setFromAxisAngle setFromAxisAngle]( [page:Float axis], [page:Float angle] )
+ on the [page:.quaternion].
+ </div>
+
+ <h3>[method:null setRotationFromEuler]( [page:Euler euler] )</h3>
+ <div>
+ euler -- Euler angle specifying rotation amount.<br />
+
+ Calls [page:Quaternion.setRotationFromEuler setRotationFromEuler]( [page:Euler euler])
+ on the [page:.quaternion].
+ </div>
+
+ <h3>[method:null setRotationFromMatrix]( [page:Matrix4 m] )</h3>
+ <div>
+ m -- rotate the quaternion by the rotation component of the matrix.<br />
+
+ Calls [page:Quaternion.setFromRotationMatrix setFromRotationMatrix]( [page:Matrix4 m])
+ on the [page:.quaternion].<br /><br />
+
+ Note that this assumes that the upper 3x3 of m is a pure rotation matrix (i.e, unscaled).
+ </div>
+
+ <h3>[method:null setRotationFromQuaternion]( [page:Quaternion q] )</h3>
+ <div>
+ q -- normalized Quaternion.<br /><br />
+
+ Copy the given quaternion into [page:.quaternion].
+ </div>
+
+ <h3>[method:null toJSON]( [page:Quaternion q] )</h3>
+ <div>
+ Convert the object to JSON format.
+ </div>
+
+ <h3>[method:Object3D translateOnAxis]( [page:Vector3 axis], [page:Float distance] )</h3>
+ <div>
+ axis -- A normalized vector in object space.<br />
+ distance -- The distance to translate.<br /><br />
+
+ Translate an object by distance along an axis in object space. The axis is assumed to be normalized.
+ </div>
+
+ <h3>[method:null translateX]( [page:Float distance] )</h3>
+ <div>Translates object along x axis by *distance* units.</div>
+
+ <h3>[method:null translateY]( [page:Float distance] )</h3>
+ <div>Translates object along y axis by *distance* units.</div>
+
+ <h3>[method:null translateZ]( [page:Float distance] )</h3>
+ <div>Translates object along z axis by *distance* units.</div>
+
+ <h3>[method:null traverse]( [page:Function callback] )</h3>
+ <div>
+ callback - A function with as first argument an object3D object.<br /><br />
+
+ Executes the callback on this object and all descendants.
+ </div>
+
+ <h3>[method:null traverseVisible]( [page:Function callback] )</h3>
+ <div>
+ callback - A function with as first argument an object3D object.<br /><br />
+
+ Like traverse, but the callback will only be executed for visible objects.
+ Descendants of invisible objects are not traversed.
+ </div>
+
+ <h3>[method:null traverseAncestors]( [page:Function callback] )</h3>
+ <div>
+ callback - A function with as first argument an object3D object.<br /><br />
+
+ Executes the callback on all ancestors.
+ </div>
+
+ <h3>[method:null updateMatrix]()</h3>
+ <div>Update the local transform.</div>
+
+ <h3>[method:null updateMatrixWorld]( [page:Boolean force] )</h3>
+ <div>Update the global transform of the object and its children.</div>
+
+
+ <h3>[method:Vector3 worldToLocal]( [page:Vector3 vector] )</h3>
+ <div>
+ vector - A world vector.<br /><br />
+
+ Updates the vector from world space to local space.
+ </div>
+
+ <h2>Source</h2>
+
+ [link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]
+ </body>
+</html>