Packageaway3d.cameras
Classpublic class Camera3D
InheritanceCamera3D Inheritance Entity Inheritance ObjectContainer3D Inheritance Object3D Inheritance NamedAssetBase Inheritance flash.events.EventDispatcher

A Camera3D object represents a virtual camera through which we view the scene.



Public Properties
 PropertyDefined By
 InheritedassetFullPath : Array
[read-only]
NamedAssetBase
 InheritedassetNamespace : String
[read-only]
NamedAssetBase
 InheritedassetType : String
[override] [read-only]
Entity
 InheritedbackVector : Vector3D
[read-only]
Object3D
 Inheritedbounds : 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
  frustumPlanes : Vector.<Plane3D>
[read-only]
Camera3D
 InheritedinverseSceneTransform : Matrix3D
[read-only] The inverse scene transform object that transforms from world to model space.
ObjectContainer3D
 InheritedleftVector : Vector3D
[read-only]
Object3D
  lens : LensBase
The lens used by the camera to perform the projection;
Camera3D
 InheritedmaxX : Number
[override] [read-only] The maximum extremum of the object along the X-axis.
Entity
 InheritedmaxY : Number
[override] [read-only] The maximum extremum of the object along the Y-axis.
Entity
 InheritedmaxZ : Number
[override] [read-only] The maximum extremum of the object along the Z-axis.
Entity
 InheritedminX : Number
[override] [read-only] The minimum extremum of the object along the X-axis.
Entity
 InheritedminY : Number
[override] [read-only] The minimum extremum of the object along the Y-axis.
Entity
 InheritedminZ : Number
[override] [read-only] The minimum extremum of the object along the Z-axis.
Entity
 InheritedmodelViewProjection : 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
 InheritedpickingCollider : 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
 InheritedpickingCollisionVO : 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
 Inheritedscene : 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
 InheritedshaderPickingDetails : 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
 InheritedshowBounds : 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
  viewProjection : Matrix3D
[read-only] The view projection matrix of the camera.
Camera3D
 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
 Inherited_bounds : BoundingVolumeBase
Entity
 Inherited_boundsInvalid : Boolean = true
Entity
 Inherited_explicitPartition : Partition3D
ObjectContainer3D
 Inherited_implicitPartition : Partition3D
ObjectContainer3D
 Inherited_mouseEnabled : Boolean
ObjectContainer3D
 Inherited_mvpIndex : int = -1
Entity
 Inherited_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
 Inherited_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
 Inherited_zIndices : Vector.<Number>
Entity
Public Methods
 MethodDefined By
  
Camera3D(lens:LensBase = null)
Creates a new Camera3D object
Camera3D
 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
 Inherited
Gets a concrete EntityPartition3DNode subclass that is associated with this Entity instance
Entity
  
getRay(mX:Number, mY:Number, mZ:Number = 0):Vector3D
Returns the ray in scene space from the camera to the point on the screen in normalized coordinates.
Camera3D
 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
 Inherited
Removes a model view projection matrix from the stack, used when leaving a render.
Entity
  
project(point3d:Vector3D):Vector3D
Camera3D
 Inherited
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
  
unproject(mX:Number, mY:Number, mZ:Number = 0):Vector3D
Calculates the scene position of the given normalized coordinates.
Camera3D
 Inherited
ObjectContainer3D
 Inherited
yaw(angle:Number):void
Rotates the 3d object around it's local y-axis
Object3D
Protected Methods
 MethodDefined By
  
[override] Factory method that returns the current partition node.
Camera3D
 Inherited
Creates the default bounding box to be used by this type of Entity.
Entity
 Inherited
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.
Camera3D
  
[override] Updates the bounding volume for the object.
Camera3D
 Inherited
[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
frustumPlanesproperty
frustumPlanes:Vector.<Plane3D>  [read-only]


Implementation
    public function get frustumPlanes():Vector.<Plane3D>
lensproperty 
lens:LensBase

The lens used by the camera to perform the projection;


Implementation
    public function get lens():LensBase
    public function set lens(value:LensBase):void
viewProjectionproperty 
viewProjection:Matrix3D  [read-only]

The view projection matrix of the camera.


Implementation
    public function get viewProjection():Matrix3D
Constructor Detail
Camera3D()Constructor
public function Camera3D(lens:LensBase = null)

Creates a new Camera3D object

Parameters
lens:LensBase (default = null) — An optional lens object that will perform the projection. Defaults to PerspectiveLens.

See also

Method Detail
createEntityPartitionNode()method
override 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
getRay()method 
public function getRay(mX:Number, mY:Number, mZ:Number = 0):Vector3D

Returns the ray in scene space from the camera to the point on the screen in normalized coordinates.

Parameters

mX:Number — The x coordinate relative to the View3D. -1 corresponds to the utter left side of the viewport, 1 to the right.
 
mY:Number — The y coordinate relative to the View3D. -1 corresponds to the top side of the viewport, 1 to the bottom.
 
mZ:Number (default = 0)

Returns
Vector3D — The ray from the camera to the scene space position of a point on the projection plane.
invalidateSceneTransform()method 
override protected function invalidateSceneTransform():void

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

project()method 
public function project(point3d:Vector3D):Vector3D

Parameters

point3d:Vector3D

Returns
Vector3D
unproject()method 
public function unproject(mX:Number, mY:Number, mZ:Number = 0):Vector3D

Calculates the scene position of the given normalized coordinates.

Parameters

mX:Number — The x coordinate relative to the View3D. -1 corresponds to the utter left side of the viewport, 1 to the right.
 
mY:Number — The y coordinate relative to the View3D. -1 corresponds to the top side of the viewport, 1 to the bottom.
 
mZ:Number (default = 0)

Returns
Vector3D — The scene position of the given screen coordinates.
updateBounds()method 
override protected function updateBounds():void

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