Package | away3d.graphs.bsp |
Class | public class BSPTree |
Inheritance | BSPTree ObjectContainer3D Mesh Object3D flash.events.EventDispatcher |
Property | Defined by | ||
---|---|---|---|
activeLeaf : BSPNode
[read-only]
The leaf containing the camera.
| BSPTree | ||
alpha : Number
An optional alpha value that can be applied to the 3d object.
| Object3D | ||
animationLibrary : AnimationLibrary
Reference container for all animations used in the container.
| Object3D | ||
back : Material
Defines a triangle material to be used for the backface of all faces in the 3d object.
| Mesh | ||
blendMode : String
An optional blend mode that can be applied to the 3d object.
| Object3D | ||
bothsides : Boolean
Indicates whether both the front and reverse sides of a face should be rendered.
| Mesh | ||
boundingRadius : Number
Returns the bounding radius of the 3d object
| Object3D | ||
center : Array | Object3D | ||
children : Array
Returns the children of the container as an array of 3d objects
| ObjectContainer3D | ||
collidedObject : Object3D
[read-only]
| BSPTree | ||
collider : Boolean
Indicates whether this object is used for collision detection.
| Object3D | ||
collisionPlane : Plane3D
[read-only]
The plane against which was collided during the last call to traceCollision
| BSPTree | ||
collisionRatio : Number [read-only]
The ratio [0, 1] on the movement line where the previous collision occurred
| BSPTree | ||
commands : Array
Returns an array of the commands contained in the mesh object.
| Mesh | ||
debugbb : Boolean
Indicates whether a debug bounding box should be rendered around the 3d object.
| Object3D | ||
debugBoundingBox : WireCube | Object3D | ||
debugBoundingSphere : WireSphere | Object3D | ||
debugbs : Boolean
Indicates whether a debug bounding sphere should be rendered around the 3d object.
| Object3D | ||
elements : Array
Returns an array of all elements contained in the mesh object.
| Mesh | ||
eulers : Number3D
Defines the rotation of the 3d object as a
Number3D object containing euler angles for rotation around x, y and z axis. | Object3D | ||
extra : Object
An optional untyped object that can contain used-defined properties
| Object3D | ||
faces : Array
Returns an array of the faces contained in the mesh object.
| Mesh | ||
faceVOs : Array
Returns an array of the faceVOs contained in the mesh object.
| Mesh | ||
filters : Array
An optional array of filters that can be applied to the 3d object.
| Object3D | ||
geometry : Geometry
Defines the geometry object used for the mesh.
| Mesh | ||
geometryLibrary : GeometryLibrary
Reference container for all geometries used in the container.
| Object3D | ||
id : int | Object3D | ||
indexes : Array
Placeholder for md2 frame indexes
| Mesh | ||
indices : Array
Returns an array of the indices contained in the mesh object.
| Mesh | ||
inverseSceneTransform : MatrixAway3D
Returns the inverse of sceneTransform.
| Object3D | ||
lightarray : ILightConsumer
returns the array of lights contained inside the container.
| Object3D | ||
lights : Array
Returns the lights of the container as an array of light objects
| ObjectContainer3D | ||
material : Material
Defines the material used to render the faces, segments or 3d sprites in the geometry object.
| Mesh | ||
materialLibrary : MaterialLibrary
Reference container for all materials used in the container.
| Object3D | ||
maxX : Number
Returns the maximum x value of the 3d object
| Object3D | ||
maxY : Number
Returns the maximum y value of the 3d object
| Object3D | ||
maxZ : Number
Returns the maximum z value of the 3d object
| Object3D | ||
minX : Number
Returns the minimum x value of the 3d object
| Object3D | ||
minY : Number
Returns the minimum y value of the 3d object
| Object3D | ||
minZ : Number
Returns the minimum z value of the 3d object
| Object3D | ||
mouseEnabled : Boolean = true
Defines whether mouse events are received on the 3d object
| Object3D | ||
name : String
An optional name string for the 3d object.
| Object3D | ||
objectDepth : Number
Boundary depth of the 3d object
return The depth of the mesh
| Object3D | ||
objectHeight : Number
Boundary height of the 3d object
return The height of the mesh
| Object3D | ||
objectWidth : Number
Boundary width of the 3d object
return The width of the object
| Object3D | ||
outline : Material
Defines a segment material to be used for outlining the 3d object.
| Mesh | ||
ownCanvas : Boolean
Defines whether the contents of the 3d object are rendered using it's own render session
| Object3D | ||
ownLights : Boolean
Defines whether the children of the container are rendered using it's own lights.
| Object3D | ||
ownSession : AbstractRenderSession
Defines a unique render session for the 3d object.
| Object3D | ||
parent : ObjectContainer3D
[write-only]
| BSPTree | ||
pivotPoint : Number3D
Defines the local point around which the object rotates.
| Object3D | ||
pivotZero : Boolean | Object3D | ||
polyCount : int
Returns the number of elements in the container,
including elements in child nodes.
| ObjectContainer3D | ||
position : Number3D
Defines the position of the 3d object, relative to the local coordinates of the parent
ObjectContainer3D . | Object3D | ||
projectorType : String | Object3D | ||
pushback : Boolean
Elements use their furthest point from the camera when z-sorting
| Object3D | ||
pushfront : Boolean
Elements use their nearest point to the camera when z-sorting
| Object3D | ||
renderer : IPrimitiveConsumer
An optional renderer object that can be used to render the contents of the object.
| Object3D | ||
rootNode : BSPNode
[read-only]
| BSPTree | ||
rotationX : Number
Defines the euler angle of rotation of the 3d object around the x-axis, relative to the local coordinates of the parent
ObjectContainer3D . | Object3D | ||
rotationY : Number
Defines the euler angle of rotation of the 3d object around the y-axis, relative to the local coordinates of the parent
ObjectContainer3D . | Object3D | ||
rotationZ : Number
Defines the euler angle of rotation of the 3d object around the z-axis, relative to the local coordinates of the parent
ObjectContainer3D . | Object3D | ||
scaleX : Number
Defines the scale of the 3d object along the x-axis, relative to local coordinates.
| Object3D | ||
scaleY : Number
Defines the scale of the 3d object along the y-axis, relative to local coordinates.
| Object3D | ||
scaleZ : Number
Defines the scale of the 3d object along the z-axis, relative to local coordinates.
| Object3D | ||
scene : Scene3D
Returns the parent scene of the 3d object
| Object3D | ||
scenePivotPoint : Number3D | Object3D | ||
scenePosition : Number3D
Returns the position of the 3d object, relative to the global coordinates of the
Scene3D object. | Object3D | ||
sceneTransform : MatrixAway3D
Returns the transformation of the 3d object, relative to the global coordinates of the
Scene3D object. | Object3D | ||
screenXOffset : Number
Defines an additional offset to the x coordinate used on mesh elements or objects with ownCanvas set to true
| Object3D | ||
screenYOffset : Number
Defines an additional offset to the y coordinate used on mesh elements or objects with ownCanvas set to true
| Object3D | ||
screenZOffset : Number
Defines an additional offset to the z-sorting algorithm used on mesh elements or objects with ownCanvas set to true
| Object3D | ||
segments : Array
Returns an array of the segments contained in the mesh object.
| Mesh | ||
segmentVOs : Array
Returns an array of the segmentVOs contained in the mesh object.
| Mesh | ||
session : AbstractRenderSession
The render session used by the 3d object
| Object3D | ||
sprites : Array
Returns an array of the 3d sprites contained in the mesh object.
| Mesh | ||
spriteVOs : Array
Returns an array of the spriteVOs contained in the mesh object.
| Mesh | ||
startIndices : Array
Returns an array of the start indices contained in the mesh object.
| Mesh | ||
transform : MatrixAway3D
Defines the transformation of the 3d object, relative to the local coordinates of the parent
ObjectContainer3D . | Object3D | ||
type : String = "mesh"
String defining the type of class used to generate the mesh.
| Mesh | ||
url : String
String defining the source of the mesh.
| Mesh | ||
useHandCursor : Boolean = false
Defines whether a hand cursor is displayed when the mouse rolls over the 3d object.
| Object3D | ||
usePVS : Boolean = true | BSPTree | ||
vertices : Array
Returns an array of the vertices contained in the mesh object.
| Mesh | ||
visible : Boolean
Defines whether the 3d object is visible in the scene
| Object3D | ||
x : Number
Defines the x coordinate of the 3d object relative to the local coordinates of the parent
ObjectContainer3D . | Object3D | ||
y : Number
Defines the y coordinate of the 3d object relative to the local coordinates of the parent
ObjectContainer3D . | Object3D | ||
z : Number
Defines the z coordinate of the 3d object relative to the local coordinates of the parent
ObjectContainer3D . | Object3D |
Method | Defined by | ||
---|---|---|---|
BSPTree
(buildDynamicCollisionTree:Boolean = true)
Creates a new BSPTree object.
| BSPTree | ||
Adds a 3d object to the scene as a child of the container
| BSPTree | ||
addChildren(... childarray):void
Adds an array of 3d objects to the scene as children of the container
| ObjectContainer3D | ||
Adds a face object to the mesh object.
| Mesh | ||
Adds a light as a child of the container
| ObjectContainer3D | ||
addOnDimensionsChange(listener:Function):void
Default method for adding a dimensionschanged event listener
| Object3D | ||
addOnMouseDown(listener:Function):void
Default method for adding a mouseDown3D event listener
| Object3D | ||
addOnMouseMove(listener:Function):void
Default method for adding a mouseMove3D event listener
| Object3D | ||
addOnMouseOut(listener:Function):void
Default method for adding a mouseOut3D event listener
| Object3D | ||
addOnMouseOver(listener:Function):void
Default method for adding a mouseOver3D event listener
| Object3D | ||
addOnMouseUp(listener:Function):void
Default method for adding a mouseUp3D event listener
| Object3D | ||
addOnParentUpdate(listener:Function):void
Default method for adding a parentupdated event listener
| Object3D | ||
addOnRollOut(listener:Function):void
Default method for adding a rollOut3D event listener
| Object3D | ||
addOnRollOver(listener:Function):void
Default method for adding a rollOver3D event listener
| Object3D | ||
addOnSceneChange(listener:Function):void
Default method for adding a scenechanged event listener
| Object3D | ||
addOnSceneTransformChange(listener:Function):void
Default method for adding a scenetransformchanged event listener
| Object3D | ||
addOnSessionChange(listener:Function):void
Default method for adding a sessionchanged event listener
| Object3D | ||
addOnTransformChange(listener:Function):void
Default method for adding a transformchanged event listener
| Object3D | ||
Adds a segment object to the mesh object.
| Mesh | ||
Adds a sprite3d object to the mesh object.
| Mesh | ||
applyPosition(dx:Number, dy:Number, dz:Number):void
Apply the given position to child objects without altering the appearance of the object container
| ObjectContainer3D | ||
applyRotations():void
Apply the local rotations to child objects without altering the appearance of the object container
| ObjectContainer3D | ||
asAS3Class(classname:String = null, packagename:String = "", round:Boolean = false, animated:Boolean = false):String
Returns a formatted string containing a self contained AS3 class definition that can be used to re-create the mesh.
| Mesh | ||
asXML():XML
Returns an xml representation of the mesh
| Mesh | ||
centerMeshes():void
Adjusts each pivot point of the container object's children so that they lies at the center of each childs geoemtry.
| ObjectContainer3D | ||
centerPivot():void
Adjusts the pivot point of the object so that it lies at the center of it's geoemtry.
| ObjectContainer3D | ||
Duplicates the 3d object's properties to another
ObjectContainer3D object
| ObjectContainer3D | ||
Duplicates the 3d object's properties to another
ObjectContainer3D object, including bones and geometry
| ObjectContainer3D | ||
Calulates the absolute distance between the local 3d object position and the position of the given 3d object
| Object3D | ||
Returns a bone object specified by name from the child array of the container
| ObjectContainer3D | ||
Returns a 3d object specified by name from the child array of the container
| ObjectContainer3D | ||
Finds the leaf that contains a given point
| BSPTree | ||
invertFaces():void
Inverts the geometry of all face objects.
| Mesh | ||
Rotates the 3d object around to face a point defined relative to the local coordinates of the parent
ObjectContainer3D . | Object3D | ||
moveBackward(distance:Number):void
Moves the 3d object backwards along it's local z axis
| Object3D | ||
moveDown(distance:Number):void
Moves the 3d object backwards along it's local y axis
| Object3D | ||
moveForward(distance:Number):void
Moves the 3d object forwards along it's local z axis
| Object3D | ||
moveLeft(distance:Number):void
Moves the 3d object backwards along it's local x axis
| Object3D | ||
movePivot(dx:Number, dy:Number, dz:Number):void
Moves the local point around which the object rotates.
| Object3D | ||
moveRight(distance:Number):void
Moves the 3d object forwards along it's local x axis
| Object3D | ||
moveTo(dx:Number, dy:Number, dz:Number):void
Moves the 3d object directly to a point in space
| Object3D | ||
moveUp(distance:Number):void
Moves the 3d object forwards along it's local y axis
| Object3D | ||
pitch(angle:Number):void
Rotates the 3d object around it's local x-axis
| Object3D | ||
Divides a face object into 4 equal sized face objects.
| Mesh | ||
quarterFaces():void
Divides all faces objects of a Mesh into 4 equal sized face objects.
| Mesh | ||
Removes a 3d object from the child array of the container
| BSPTree | ||
removeChildByName(name:String):void
Removes a 3d object from the child array of the container
| ObjectContainer3D | ||
Removes a face object from the mesh object.
| Mesh | ||
Removes a light from the container
| ObjectContainer3D | ||
removeOnDimensionsChange(listener:Function):void
Default method for removing a dimensionschanged event listener
| Object3D | ||
removeOnMouseDown(listener:Function):void
Default method for removing a mouseDown3D event listener
| Object3D | ||
removeOnMouseMove(listener:Function):void
Default method for removing a mouseMove3D event listener
| Object3D | ||
removeOnMouseOut(listener:Function):void
Default method for removing a mouseOut3D event listener
| Object3D | ||
removeOnMouseOver(listener:Function):void
Default method for removing a mouseOver3D event listener
| Object3D | ||
removeOnMouseUp(listener:Function):void
Default method for removing a mouseUp3D event listener
| Object3D | ||
removeOnParentUpdate(listener:Function):void
Default method for removing a parentupdated event listener
| Object3D | ||
removeOnRollOut(listener:Function):void
Default method for removing a rollOut3D event listener
| Object3D | ||
removeOnRollOver(listener:Function):void
Default method for removing a rollOver3D event listener
| Object3D | ||
removeOnSceneChange(listener:Function):void
Default method for removing a scenechanged event listener
| Object3D | ||
removeOnSceneTransformChange(listener:Function):void
Default method for removing a scenetransformchanged event listener
| Object3D | ||
removeOnSessionChange(listener:Function):void
Default method for removing a sessionchanged event listener
| Object3D | ||
removeOnTransformChange(listener:Function):void
Default method for removing a transformchanged event listener
| Object3D | ||
Removes a segment object from the mesh object.
| Mesh | ||
Removes a 3d sprite object from the mesh object.
| Mesh | ||
roll(angle:Number):void
Rotates the 3d object around it's local z-axis
| Object3D | ||
Rotates the 3d object around an axis by a defined angle
| Object3D | ||
rotateTo(ax:Number, ay:Number, az:Number):void
Rotates the 3d object directly to a euler angle
| Object3D | ||
scale(scale:Number):void
Scales the contents of the 3d object.
| Object3D | ||
Divides a face object into 2 face objects.
| Mesh | ||
splitFaces(side:int = 0):void
Divides all faces objects of a Mesh into 2 face objects.
| Mesh | ||
tick(time:int):void
Called by the
TickTraverser . | Object3D | ||
toString():String
Used to trace the values of a 3d object.
| Object3D | ||
Finds the closest colliding Face between start and end position
| BSPTree | ||
Moves the 3d object along a vector by a defined length
| Object3D | ||
Used when traversing the scenegraph
| BSPTree | ||
Divides a face object into 3 face objects.
| Mesh | ||
triFaces():void
Divides all faces objects of a Mesh into 3 face objects.
| Mesh | ||
Updates the materials in the mesh object
| Mesh | ||
updateObject():void
| Object3D | ||
updateSession():void
| Object3D | ||
update vertex information.
| Mesh | ||
yaw(angle:Number):void
Rotates the 3d object around it's local y-axis
| Object3D |
Constant | Defined by | ||
---|---|---|---|
COLLISION_EPSILON : Number = 0.1 [static]
| BSPTree | ||
EPSILON : Number = 0.07 [static]
| BSPTree | ||
TEST_METHOD_AABB : int = 1 [static]
| BSPTree | ||
TEST_METHOD_ELLIPSOID : int = 2 [static]
| BSPTree | ||
TEST_METHOD_POINT : int = 0 [static]
| BSPTree |
activeLeaf | property |
activeLeaf:BSPNode
[read-only]The leaf containing the camera. Returns null if the camera is in "solid" space.
Implementation public function get activeLeaf():BSPNode
_collidedObject | property |
arcane var _collidedObject:Object3D
collidedObject | property |
_collisionPlane | property |
arcane var _collisionPlane:Plane3D
collisionPlane | property |
collisionPlane:Plane3D
[read-only]The plane against which was collided during the last call to traceCollision
Implementation public function get collisionPlane():Plane3D
_collisionRatio | property |
arcane var _collisionRatio:Number
collisionRatio | property |
collisionRatio:Number
[read-only]The ratio [0, 1] on the movement line where the previous collision occurred
Implementation public function get collisionRatio():Number
_leaves | property |
arcane var _leaves:Vector
leaves | property |
leaves:Vector
[read-only]All the leaves in the current tree
Implementation arcane function get leaves():Vector
parent | property |
parent:ObjectContainer3D
[write-only]Implementation
public function set parent(value:ObjectContainer3D):void
_rootNode | property |
arcane var _rootNode:BSPNode
rootNode | property |
usePVS | property |
public var usePVS:Boolean = true
BSPTree | () | constructor |
public function BSPTree(buildDynamicCollisionTree:Boolean = true)
Parameters
buildDynamicCollisionTree:Boolean (default = true )
|
addChild | () | method |
public override function addChild(child:Object3D):void
Adds a 3d object to the scene as a child of the container
Parameterschild:Object3D — The 3d object to be added
|
addTemporaryChild | () | method |
getLeafContaining | () | method |
public function getLeafContaining(point:Number3D, quitOnCulled:Boolean = false):BSPNode
Finds the leaf that contains a given point
Parameterspoint:Number3D — The point to be traced. The point is expressed in local space.
|
|
quitOnCulled:Boolean (default = false ) — Indicates whether leaf finding should stop when a culled node is encountered.
|
BSPNode —
The leaf containing the point
|
removeChild | () | method |
public override function removeChild(child:Object3D):void
Removes a 3d object from the child array of the container
Parameterschild:Object3D — The 3d object to be removed
|
removeTemporaryChild | () | method |
traceCollision | () | method |
public function traceCollision(start:Number3D, end:Number3D, testMethod:int, halfExtents:Number3D = null):Boolean
Finds the closest colliding Face between start and end position
Parametersstart:Number3D — The starting position of the object (ie the object's current position)
|
|
end:Number3D — The position the object is trying to reach
|
|
testMethod:int — The radii of the object's bounding eclipse
|
|
halfExtents:Number3D (default = null )
|
Boolean — The closest Face colliding with the object. Null if no collision was found.
|
traverse | () | method |
public override function traverse(traverser:Traverser):void
Used when traversing the scenegraph
Parameterstraverser:Traverser — The traverser object
|
COLLISION_EPSILON | constant |
public static const COLLISION_EPSILON:Number = 0.1
EPSILON | constant |
public static const EPSILON:Number = 0.07
TEST_METHOD_AABB | constant |
public static const TEST_METHOD_AABB:int = 1
TEST_METHOD_ELLIPSOID | constant |
public static const TEST_METHOD_ELLIPSOID:int = 2
TEST_METHOD_POINT | constant |
public static const TEST_METHOD_POINT:int = 0