123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399 |
- <!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 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 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 *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.</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>Up direction. Default is [page:Vector3]( 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>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>This updates the position, rotation and scale with the matrix.</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 optionaly 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 aclue 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) target to set the result. Otherwise, a new [page:Quaternion] is
- instantiated. <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) target to set the result. Otherwise, a new [page:Euler] is instantiated.<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>
- optionalTarget — (optional) target to set the result. Otherwise, a new [page:Vector3] is instantiated.<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>
- optionalTarget — (optional) target to set the result. Otherwise, a new [page:Vector3] is instantiated.<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) spave.<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>
|