Packageaway3d.entities
Classpublic class Entity
InheritanceEntity Inheritance ObjectContainer3D Inheritance Object3D Inheritance NamedAssetBase Inheritance flash.events.EventDispatcher
Subclasses Camera3D, LightBase, Mesh, SegmentSet, SkyBox, Sprite3D

The Entity class provides an abstract base class for all scene graph objects that are considered having a "presence" in the scene, in the sense that it can be considered an actual object with a position and a size (even if infinite or idealised), rather than a grouping. Entities can be partitioned in a space partitioning system and in turn collected by an EntityCollector.

See also

away3d.partition.Partition3D
away3d.core.traverse.EntityCollector


Public Properties
 PropertyDefined By
 InheritedassetFullPath : Array
[read-only]
NamedAssetBase
 InheritedassetNamespace : String
[read-only]
NamedAssetBase
  assetType : String
[override] [read-only]
Entity
 InheritedbackVector : Vector3D
[read-only]
Object3D
  bounds : BoundingVolumeBase
The bounding volume approximating the volume occupied by the Entity.
Entity
 InheriteddownVector : Vector3D
[read-only]
Object3D
 Inheritedeulers : Vector3D
Defines the rotation of the 3d object as a Vector3D object containing euler angles for rotation around x, y and z axis.
Object3D
 Inheritedextra : Object
An object that can contain any extra data.
Object3D
 InheritedforwardVector : Vector3D
[read-only]
Object3D
 InheritedinverseSceneTransform : Matrix3D
[read-only] The inverse scene transform object that transforms from world to model space.
ObjectContainer3D
 InheritedleftVector : Vector3D
[read-only]
Object3D
  maxX : Number
[override] [read-only] The maximum extremum of the object along the X-axis.
Entity
  maxY : Number
[override] [read-only] The maximum extremum of the object along the Y-axis.
Entity
  maxZ : Number
[override] [read-only] The maximum extremum of the object along the Z-axis.
Entity
  minX : Number
[override] [read-only] The minimum extremum of the object along the X-axis.
Entity
  minY : Number
[override] [read-only] The minimum extremum of the object along the Y-axis.
Entity
  minZ : Number
[override] [read-only] The minimum extremum of the object along the Z-axis.
Entity
  modelViewProjection : Matrix3D
[read-only] The current model-view-projection (MVP) matrix - the one on the top of the stack - used to transform from model to homogeneous projection space.
Entity
 InheritedmouseChildren : Boolean
ObjectContainer3D
 InheritedmouseEnabled : Boolean
Indicates whether the IRenderable should trigger mouse events, and hence should be rendered for hit testing.
ObjectContainer3D
 Inheritedname : String
NamedAssetBase
 InheritednumChildren : uint
[read-only] The amount of child objects of the ObjectContainer3D.
ObjectContainer3D
 InheritedoriginalName : String
[read-only] The original name used for this asset in the resource (e.g.
NamedAssetBase
 Inheritedparent : ObjectContainer3D
[read-only] The parent ObjectContainer3D to which this object's transformation is relative.
ObjectContainer3D
 Inheritedpartition : Partition3D
The space partition to be used by the object container and all its recursive children, unless it has its own space partition assigned.
ObjectContainer3D
  pickingCollider : IPickingCollider
Used by the raycast-based picking system to determine how the geometric contents of an entity are processed in order to offer more details for the picking collision object, including local position, normal vector and uv value.
Entity
  pickingCollisionVO : PickingCollisionVO
[read-only] Returns a unique picking collision value object for the entity.
Entity
 InheritedpivotPoint : Vector3D
Defines the local point around which the object rotates.
Object3D
 Inheritedposition : Vector3D
Defines the position of the 3d object, relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 InheritedrightVector : Vector3D
[read-only]
Object3D
 InheritedrotationX : 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
 InheritedrotationY : 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
 InheritedrotationZ : 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
 InheritedscaleX : Number
Defines the scale of the 3d object along the x-axis, relative to local coordinates.
Object3D
 InheritedscaleY : Number
Defines the scale of the 3d object along the y-axis, relative to local coordinates.
Object3D
 InheritedscaleZ : Number
Defines the scale of the 3d object along the z-axis, relative to local coordinates.
Object3D
  scene : Scene3D
[override] A reference to the Scene3D object to which this object belongs.
Entity
 InheritedscenePosition : Vector3D
[read-only] The global position of the ObjectContainer3D in the scene.
ObjectContainer3D
 InheritedsceneTransform : Matrix3D
[read-only] The transformation matrix that transforms from model to world space.
ObjectContainer3D
  shaderPickingDetails : Boolean
Used by the shader-based picking system to determine whether a separate render pass is made in order to offer more details for the picking collision object, including local position, normal vector and uv value.
Entity
  showBounds : Boolean
Entity
 Inheritedtransform : Matrix3D
The transformation of the 3d object, relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 InheritedupVector : Vector3D
[read-only]
Object3D
 Inheritedvisible : Boolean
ObjectContainer3D
 Inheritedx : Number
Defines the x coordinate of the 3d object relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 Inheritedy : Number
Defines the y coordinate of the 3d object relative to the local coordinates of the parent ObjectContainer3D.
Object3D
 Inheritedz : Number
Defines the z coordinate of the 3d object relative to the local coordinates of the parent ObjectContainer3D.
Object3D
Protected Properties
 PropertyDefined By
  _bounds : BoundingVolumeBase
Entity
  _boundsInvalid : Boolean = true
Entity
 Inherited_explicitPartition : Partition3D
ObjectContainer3D
 Inherited_implicitPartition : Partition3D
ObjectContainer3D
 Inherited_mouseEnabled : Boolean
ObjectContainer3D
  _mvpIndex : int = -1
Entity
  _mvpTransformStack : Vector.<Matrix3D>
Entity
 Inherited_parent : ObjectContainer3D
ObjectContainer3D
 Inherited_pivotPoint : Vector3D
Object3D
 Inherited_pivotZero : Boolean = true
Object3D
 Inherited_pos : Vector3D
Object3D
 Inherited_rot : Vector3D
Object3D
 Inherited_sca : Vector3D
Object3D
 Inherited_scaleX : Number = 1
Object3D
 Inherited_scaleY : Number = 1
Object3D
 Inherited_scaleZ : Number = 1
Object3D
 Inherited_scene : Scene3D
ObjectContainer3D
 Inherited_sceneTransform : Matrix3D
ObjectContainer3D
 Inherited_sceneTransformDirty : Boolean = true
ObjectContainer3D
  _stackLen : uint
Entity
 Inherited_transform : Matrix3D
Object3D
 Inherited_transformComponents : Vector.<Vector3D>
Object3D
 Inherited_x : Number = 0
Object3D
 Inherited_y : Number = 0
Object3D
 Inherited_z : Number = 0
Object3D
  _zIndices : Vector.<Number>
Entity
Public Methods
 MethodDefined By
  
Creates a new Entity object.
Entity
 Inherited
Adds a child ObjectContainer3D to the current object.
ObjectContainer3D
 Inherited
addChildren(... childarray):void
Adds an array of 3d objects to the scene as children of the container
ObjectContainer3D
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
[override]
ObjectContainer3D
 Inherited
assetPathEquals(name:String, ns:String):Boolean
NamedAssetBase
 Inherited
[override] Clones this ObjectContainer3D instance along with all it's children, and returns the result (which will be a copy of this container, containing copies of all it's children.)
ObjectContainer3D
 Inherited
ObjectContainer3D
 Inherited
dispatchEvent(event:Event):Boolean
[override]
ObjectContainer3D
 Inherited
dispose():void
[override] Cleans up resources used by this asset.
ObjectContainer3D
 Inherited
Object3D
 Inherited
Retrieves the child object at the given index.
ObjectContainer3D
  
Gets a concrete EntityPartition3DNode subclass that is associated with this Entity instance
Entity
 Inherited
lookAt(target:Vector3D, upAxis:Vector3D = null):void
[override] Rotates the 3d object around to face a point defined relative to the local coordinates of the parent ObjectContainer3D.
ObjectContainer3D
 Inherited
moveBackward(distance:Number):void
Moves the 3d object backwards along it's local z axis
Object3D
 Inherited
moveDown(distance:Number):void
Moves the 3d object backwards along it's local y axis
Object3D
 Inherited
moveForward(distance:Number):void
Moves the 3d object forwards along it's local z axis
Object3D
 Inherited
moveLeft(distance:Number):void
Moves the 3d object backwards along it's local x axis
Object3D
 Inherited
movePivot(dx:Number, dy:Number, dz:Number):void
Moves the local point around which the object rotates.
Object3D
 Inherited
moveRight(distance:Number):void
Moves the 3d object forwards along it's local x axis
Object3D
 Inherited
moveTo(dx:Number, dy:Number, dz:Number):void
Moves the 3d object directly to a point in space
Object3D
 Inherited
moveUp(distance:Number):void
Moves the 3d object forwards along it's local y axis
Object3D
 Inherited
pitch(angle:Number):void
Rotates the 3d object around it's local x-axis
Object3D
  
Removes a model view projection matrix from the stack, used when leaving a render.
Entity
  
Updates the model-view-projection (MVP) matrix used to transform from model to homogeneous projection space and places it on the stack.
Entity
 Inherited
Removes a 3d object from the child array of the container
ObjectContainer3D
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
[override]
ObjectContainer3D
 Inherited
resetAssetPath(name:String, ns:String = null, overrideOriginal:Boolean = true):void
NamedAssetBase
 Inherited
roll(angle:Number):void
Rotates the 3d object around it's local z-axis
Object3D
 Inherited
rotate(axis:Vector3D, angle:Number):void
[override]
ObjectContainer3D
 Inherited
rotateTo(ax:Number, ay:Number, az:Number):void
Rotates the 3d object directly to a euler angle
Object3D
 Inherited
scale(value:Number):void
Appends a uniform scale to the current transformation.
Object3D
 Inherited
translate(axis:Vector3D, distance:Number):void
Moves the 3d object along a vector by a defined length
Object3D
 Inherited
translateLocal(axis:Vector3D, distance:Number):void
[override]
ObjectContainer3D
 Inherited
ObjectContainer3D
 Inherited
yaw(angle:Number):void
Rotates the 3d object around it's local y-axis
Object3D
Protected Methods
 MethodDefined By
  
Factory method that returns the current partition node.
Entity
  
Creates the default bounding box to be used by this type of Entity.
Entity
  
Invalidates the bounding volume, causing to be updated when requested.
Entity
  
[override] Invalidates the scene transformation matrix, causing it to be updated the next time it's requested.
Entity
  
Updates the bounding volume for the object.
Entity
  
[override]
Entity
 Inherited
Updates the scene transformation matrix.
ObjectContainer3D
 Inherited
Object3D
Events
 Event Summary Defined By
 InheritedDispatched when a user presses the left hand mouse button while the cursor is over the 3d object.ObjectContainer3D
 InheritedDispatched when a user moves the cursor while it is over the 3d object.ObjectContainer3D
 InheritedDispatched when a user moves the cursor away from the 3d object.ObjectContainer3D
 InheritedDispatched when a user moves the cursor over the 3d object.ObjectContainer3D
 InheritedDispatched when a user releases the left hand mouse button while the cursor is over the 3d object.ObjectContainer3D
 InheritedDispatched when the position of the 3d object changes.Object3D
 InheritedDispatched when the rotation of the 3d object changes.Object3D
 InheritedDispatched when the scale of the 3d object changes.Object3D
 InheritedDispatched when the parent scene of the 3d object changes.ObjectContainer3D
 InheritedDispatched when the scene transform matrix of the 3d object changes.ObjectContainer3D
Public Constants
 ConstantDefined By
 InheritedDEFAULT_NAMESPACE : String = default
[static]
NamedAssetBase
Property Detail
_boundsproperty
protected var _bounds:BoundingVolumeBase

_boundsInvalidproperty 
protected var _boundsInvalid:Boolean = true

_mvpIndexproperty 
protected var _mvpIndex:int = -1

_mvpTransformStackproperty 
protected var _mvpTransformStack:Vector.<Matrix3D>

_pickingColliderproperty 
arcane var _pickingCollider:IPickingCollider

_pickingCollisionVOproperty 
arcane var _pickingCollisionVO:PickingCollisionVO

_stackLenproperty 
protected var _stackLen:uint

_zIndicesproperty 
protected var _zIndices:Vector.<Number>

assetTypeproperty 
assetType:String  [read-only] [override]


Implementation
    public function get assetType():String
boundsproperty 
bounds:BoundingVolumeBase

The bounding volume approximating the volume occupied by the Entity.


Implementation
    public function get bounds():BoundingVolumeBase
    public function set bounds(value:BoundingVolumeBase):void
implicitPartitionproperty 
implicitPartition:Partition3D[override]


Implementation
    arcane function get implicitPartition():Partition3D
    arcane function set implicitPartition(value:Partition3D):void
maxXproperty 
maxX:Number  [read-only] [override]

The maximum extremum of the object along the X-axis.


Implementation
    public function get maxX():Number
maxYproperty 
maxY:Number  [read-only] [override]

The maximum extremum of the object along the Y-axis.


Implementation
    public function get maxY():Number
maxZproperty 
maxZ:Number  [read-only] [override]

The maximum extremum of the object along the Z-axis.


Implementation
    public function get maxZ():Number
minXproperty 
minX:Number  [read-only] [override]

The minimum extremum of the object along the X-axis.


Implementation
    public function get minX():Number
minYproperty 
minY:Number  [read-only] [override]

The minimum extremum of the object along the Y-axis.


Implementation
    public function get minY():Number
minZproperty 
minZ:Number  [read-only] [override]

The minimum extremum of the object along the Z-axis.


Implementation
    public function get minZ():Number
modelViewProjectionproperty 
modelViewProjection:Matrix3D  [read-only]

The current model-view-projection (MVP) matrix - the one on the top of the stack - used to transform from model to homogeneous projection space.


Implementation
    public function get modelViewProjection():Matrix3D
pickingColliderproperty 
pickingCollider:IPickingCollider

Used by the raycast-based picking system to determine how the geometric contents of an entity are processed in order to offer more details for the picking collision object, including local position, normal vector and uv value. Defaults to null.


Implementation
    public function get pickingCollider():IPickingCollider
    public function set pickingCollider(value:IPickingCollider):void

See also

pickingCollisionVOproperty 
pickingCollisionVO:PickingCollisionVO  [read-only]

Returns a unique picking collision value object for the entity.


Implementation
    public function get pickingCollisionVO():PickingCollisionVO
sceneproperty 
scene:Scene3D[override]

A reference to the Scene3D object to which this object belongs.


Implementation
    public function get scene():Scene3D
    public function set scene(value:Scene3D):void
shaderPickingDetailsproperty 
shaderPickingDetails:Boolean

Used by the shader-based picking system to determine whether a separate render pass is made in order to offer more details for the picking collision object, including local position, normal vector and uv value. Defaults to false.


Implementation
    public function get shaderPickingDetails():Boolean
    public function set shaderPickingDetails(value:Boolean):void

See also

showBoundsproperty 
showBounds:Boolean


Implementation
    public function get showBounds():Boolean
    public function set showBounds(value:Boolean):void
Constructor Detail
Entity()Constructor
public function Entity()

Creates a new Entity object.

Method Detail
collidesBefore()method
arcane function collidesBefore(shortestCollisionDistance:Number, findClosest:Boolean):Boolean

Tests if a collision occurs before shortestCollisionDistance, using the data stored in PickingCollisionVO.

Parameters

shortestCollisionDistance:Number
 
findClosest:Boolean

Returns
Boolean
createEntityPartitionNode()method 
protected function createEntityPartitionNode():EntityNode

Factory method that returns the current partition node. Needs to be overridden by concrete subclasses such as Mesh to return the correct concrete subtype of EntityPartition3DNode (for Mesh = MeshPartition3DNode, most IRenderables (particles fe) would return RenderablePartition3DNode, I suppose)

Returns
EntityNode
getDefaultBoundingVolume()method 
protected function getDefaultBoundingVolume():BoundingVolumeBase

Creates the default bounding box to be used by this type of Entity.

Returns
BoundingVolumeBase
getEntityPartitionNode()method 
public function getEntityPartitionNode():EntityNode

Gets a concrete EntityPartition3DNode subclass that is associated with this Entity instance

Returns
EntityNode
internalUpdate()method 
arcane function internalUpdate():void

invalidateBounds()method 
protected function invalidateBounds():void

Invalidates the bounding volume, causing to be updated when requested.

invalidateSceneTransform()method 
override protected function invalidateSceneTransform():void

Invalidates the scene transformation matrix, causing it to be updated the next time it's requested.

popModelViewProjection()method 
public function popModelViewProjection():void

Removes a model view projection matrix from the stack, used when leaving a render.

pushModelViewProjection()method 
public function pushModelViewProjection(camera:Camera3D):void

Updates the model-view-projection (MVP) matrix used to transform from model to homogeneous projection space and places it on the stack. The stack allows nested rendering while keeping the MVP intact.

Parameters

camera:Camera3D — The camera which will perform the view transformation and projection.

updateBounds()method 
protected function updateBounds():void

Updates the bounding volume for the object. Overriding methods need to set invalid flag to false!

updateMouseChildren()method 
override protected function updateMouseChildren():void