Package | away3d.graphs.bsp |
Class | public class BSPTree |
Inheritance | BSPTree ![]() ![]() ![]() ![]() |
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 [read-only]
Returns the bounding radius of the 3d object
| Object3D | |
![]() | children : Vector.<Object3D> [read-only]
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 | ||
![]() | debugbb : Boolean
Indicates whether a debug bounding box should be rendered around the 3d object. | Object3D | |
![]() | debugBoundingBox : WireCube [read-only] | Object3D | |
![]() | debugBoundingSphere : WireSphere [read-only] | Object3D | |
![]() | debugbs : Boolean
Indicates whether a debug bounding sphere should be rendered around the 3d object. | Object3D | |
![]() | elements : Vector.<Element> [read-only]
Returns an array of all elements contained in the mesh object. | Mesh | |
![]() | eulers : Vector3D
Defines the rotation of the 3d object as a Vector3D 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 : Vector.<Face> [read-only]
Returns an array of the faces contained in the mesh object. | Mesh | |
![]() | faceVOs : Vector.<FaceVO> [read-only]
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 [read-only] | Object3D | |
![]() | indexes : Array
Placeholder for md2 frame indexes
| Mesh | |
![]() | indices : Vector.<int> [read-only]
Returns an array of the indices contained in the mesh object. | Mesh | |
![]() | inverseSceneTransform : Matrix3D
Returns the inverse of sceneTransform. | Object3D | |
![]() | 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 [read-only]
Returns the maximum x value of the 3d object
| Object3D | |
![]() | maxY : Number [read-only]
Returns the maximum y value of the 3d object
| Object3D | |
![]() | maxZ : Number [read-only]
Returns the maximum z value of the 3d object
| Object3D | |
![]() | minX : Number [read-only]
Returns the minimum x value of the 3d object
| Object3D | |
![]() | minY : Number [read-only]
Returns the minimum y value of the 3d object
| Object3D | |
![]() | minZ : Number [read-only]
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 [read-only]
Boundary depth of the 3d object
return The depth of the mesh
| Object3D | |
![]() | objectHeight : Number [read-only]
Boundary height of the 3d object
return The height of the mesh
| Object3D | |
![]() | objectWidth : Number [read-only]
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 | |
![]() | ownSession : AbstractSession
Defines a unique render session for the 3d object. | Object3D | |
parent : ObjectContainer3D [override]
Defines the parent of the 3d object. | BSPTree | ||
![]() | pivotPoint : Vector3D
Defines the local point around which the object rotates. | Object3D | |
![]() | pivotZero : Boolean [read-only] | Object3D | |
![]() | polyCount : int [read-only]
Returns the number of elements in the container,
including elements in child nodes. | ObjectContainer3D | |
![]() | position : Vector3D
Defines the position of the 3d object, relative to the local coordinates of the parent ObjectContainer3D. | 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 : Renderer
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 [read-only]
Returns the parent scene of the 3d object
| Object3D | |
![]() | scenePivotPoint : Vector3D [read-only] | Object3D | |
![]() | scenePosition : Vector3D [read-only]
Returns the position of the 3d object, relative to the global coordinates of the Scene3D object. | Object3D | |
![]() | sceneTransform : Matrix3D [read-only]
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 : Vector.<Segment> [read-only]
Returns an array of the segments contained in the mesh object. | Mesh | |
![]() | segmentVOs : Vector.<SegmentVO> [read-only]
Returns an array of the segmentVOs contained in the mesh object. | Mesh | |
![]() | session : AbstractSession [read-only]
The render session used by the 3d object
| Object3D | |
![]() | sprites : Vector.<Sprite3D> [read-only]
Returns an array of the 3d sprites contained in the mesh object. | Mesh | |
![]() | spriteVOs : Vector.<SpriteVO> [read-only]
Returns an array of the spriteVOs contained in the mesh object. | Mesh | |
![]() | startIndices : Vector.<int> [read-only]
Returns an array of the start indices contained in the mesh object. | Mesh | |
![]() | transform : Matrix3D
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 : Vector.<Vertex>
Returns an array of the vertices contained in the mesh object. | Mesh | |
![]() | verts : Vector.<Number> [read-only] | 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 | ||
[override]
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 | |
![]() | addLight(light:AbstractLight):void
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 | |
![]() | addOnPositionChange(listener:Function):void
Default method for adding a positionchanged 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 | |
![]() | addOnScaleChange(listener:Function):void
Default method for adding a scalechanged 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 | |
![]() | addOnVisibilityUpdate(listener:Function):void
Default method for adding a visibilityUpdated event listener
| Object3D | |
![]() | addSegment(segment:Segment):void
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 [override]
Apply the given position to child objects without altering the appearance of the object container
| ObjectContainer3D | |
![]() | applyRotations():void [override]
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 [override]
Adjusts the pivot point of the object so that it lies at the center of it's geoemtry. | ObjectContainer3D | |
![]() | [override]
Duplicates the 3d object's properties to another ObjectContainer3D object
| ObjectContainer3D | |
![]() | [override]
Duplicates the 3d object's properties to another ObjectContainer3D object, including bones and geometry
| ObjectContainer3D | |
![]() | distanceTo(obj:Object3D):Number
Calulates the absolute distance between the local 3d object position and the position of the given 3d object
| Object3D | |
![]() | getBoneByName(boneName:String):Bone
Returns a bone object specified by name from the child array of the container
| ObjectContainer3D | |
![]() | getChildByName(childName:String):Object3D
Returns a 3d object specified by name from the child array of the container
| ObjectContainer3D | |
getLeafContaining(point:Vector3D, quitOnCulled:Boolean = false):BSPNode
Finds the leaf that contains a given point
| BSPTree | ||
![]() | invertFaces():void
Inverts the geometry of all face objects. | Mesh | |
![]() | lookAt(target:Vector3D, upAxis:Vector3D = null):void
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 | |
![]() | quarterFace(face:Face):void
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 | |
removeChild(child:Object3D):void [override]
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 | |
![]() | removeFace(face:Face):void
Removes a face object from the mesh object. | Mesh | |
![]() | removeLight(light:AbstractLight):void
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 | |
![]() | removeOnPositionChange(listener:Function):void
Default method for removing a positionchanged 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 | |
![]() | removeOnScaleChange(listener:Function):void
Default method for removing a scalechanged 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 | |
![]() | removeOnVisibilityUpdate(listener:Function):void
Default method for removing a visibilityUpdated event listener
| Object3D | |
![]() | removeSegment(segment:Segment):void
Removes a segment object from the mesh object. | Mesh | |
![]() | removeSprite(sprite3d:Sprite3D):void
Removes a 3d sprite object from the mesh object. | Mesh | |
Replaces the Material of a mesh by another one
| BSPTree | ||
![]() | roll(angle:Number):void
Rotates the 3d object around it's local z-axis
| Object3D | |
![]() | rotate(axis:Vector3D, angle:Number):void
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 [override]
Used to trace the values of a 3d object. | Object3D | |
traceCollision(start:Vector3D, end:Vector3D, testMethod:int, halfExtents:Vector3D = null):Boolean
Finds the closest colliding Face between start and end position
| BSPTree | ||
![]() | translate(axis:Vector3D, distance:Number):void
Moves the 3d object along a vector by a defined length
| Object3D | |
[override]
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 | |
![]() | updateBounds():void | Mesh | |
![]() | updateMesh(view:View3D):void
Updates the materials in the mesh object
| Mesh | |
![]() | updateVertex(v:Vertex, x:Number, y:Number, z:Number, refreshNormals:Boolean = false):void
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 |
_collidedObject | property |
arcane var _collidedObject:Object3D
_collisionPlane | property |
arcane var _collisionPlane:Plane3D
_collisionRatio | property |
arcane var _collisionRatio:Number
_leaves | property |
arcane var _leaves:Vector.<BSPNode>
_rootNode | property |
arcane var _rootNode:BSPNode
activeLeaf | property |
activeLeaf:BSPNode
[read-only] The leaf containing the camera. Returns null if the camera is in "solid" space.
public function get activeLeaf():BSPNode
collidedObject | property |
collisionPlane | property |
collisionPlane:Plane3D
[read-only] The plane against which was collided during the last call to traceCollision
public function get collisionPlane():Plane3D
collisionRatio | property |
collisionRatio:Number
[read-only] The ratio [0, 1] on the movement line where the previous collision occurred
public function get collisionRatio():Number
leaves | property |
leaves:Vector.<BSPNode>
[read-only] All the leaves in the current tree
arcane function get leaves():Vector.<BSPNode>
parent | property |
parent:ObjectContainer3D
[override] Defines the parent of the 3d object.
public function get parent():ObjectContainer3D
public function set parent(value:ObjectContainer3D):void
rootNode | property |
usePVS | property |
public var usePVS:Boolean = true
BSPTree | () | Constructor |
public function BSPTree(buildDynamicCollisionTree:Boolean = true)
Creates a new BSPTree object.
ParametersbuildDynamicCollisionTree:Boolean (default = true )
|
addChild | () | method |
override public function addChild(child:Object3D):void
Adds a 3d object to the scene as a child of the container
Parameters
child:Object3D — The 3d object to be added
|
addTemporaryChild | () | method |
getLeafContaining | () | method |
public function getLeafContaining(point:Vector3D, quitOnCulled:Boolean = false):BSPNode
Finds the leaf that contains a given point
Parameters
point:Vector3D — 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 |
override public function removeChild(child:Object3D):void
Removes a 3d object from the child array of the container
Parameters
child:Object3D — The 3d object to be removed
|
removeTemporaryChild | () | method |
replaceMaterial | () | method |
public function replaceMaterial(material:Material, newMaterial:Material, clearPreviousMaterial:Boolean = true):void
Replaces the Material of a mesh by another one
Parameters
material:Material — The actual material applied, used to compare with the meshes fragments
| |
newMaterial:Material — The material that will replace the applied one
| |
clearPreviousMaterial:Boolean (default = true ) — [optional] Clear previous material and nullifies it. Default is true. Note that eventual bitmapdata is NOT cleared.
|
traceCollision | () | method |
public function traceCollision(start:Vector3D, end:Vector3D, testMethod:int, halfExtents:Vector3D = null):Boolean
Finds the closest colliding Face between start and end position
Parameters
start:Vector3D — The starting position of the object (ie the object's current position)
| |
end:Vector3D — The position the object is trying to reach
| |
testMethod:int (default = NaN ) — The radii of the object's bounding eclipse
| |
halfExtents:Vector3D (default = null )
|
Boolean — The closest Face colliding with the object. Null if no collision was found.
|
traverse | () | method |
override public function traverse(traverser:Traverser):void
Used when traversing the scenegraph
Parameters
traverser: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