#include <FCDSceneNode.h>
Inheritance diagram for FCDSceneNode:
Public Member Functions | |
FCDSceneNode (FCDocument *document) | |
Constructor: do not use directly. | |
virtual | ~FCDSceneNode () |
Destructor: do not use directly. | |
virtual Type | GetType () const |
Retrieves the type of the entity class. | |
size_t | GetParentCount () const |
Retrieves the number of parent nodes for this visual scene node. | |
FCDSceneNode * | GetParent (size_t index=0) |
Retrieves a specific parent of the visual scene node. | |
const FCDSceneNode * | GetParent (size_t index=0) const |
See above. | |
size_t | GetChildrenCount () const |
Retrieves the number of child nodes for this visual scene node. | |
FCDSceneNode * | GetChild (size_t index) |
Retrieves a specific child of the visual scene node. | |
const FCDSceneNode * | GetChild (size_t index) const |
See above. | |
FCDSceneNodeList & | GetChildren () |
Retrieves the list of children of the visual scene node. | |
const FCDSceneNodeList & | GetChildren () const |
See above. | |
FCDSceneNode * | AddChildNode () |
Creates a new child scene node. | |
bool | AddChildNode (FCDSceneNode *sceneNode) |
Attaches a existing scene node to this visual scene node. | |
size_t | GetInstanceCount () const |
Retrieves the number of entity instances at this node of the scene graph. | |
FCDEntityInstance * | GetInstance (size_t index) |
Retrieves a specific entity instance. | |
const FCDEntityInstance * | GetInstance (size_t index) const |
See above. | |
FCDEntityInstanceList & | GetInstances () |
Retrieves the list of entity instances at this node of the scene graph. | |
const FCDEntityInstanceList & | GetInstances () const |
See above. | |
FCDEntityInstance * | AddInstance (FCDEntity *entity) |
Creates a new entity instance. | |
void | ReleaseInstance (FCDEntityInstance *instance) |
Releases an entity instance. | |
size_t | GetTransformCount () const |
Retrieves the number of transforms for this node of the scene graph. | |
FCDTransform * | GetTransform (size_t index) |
Retrieves a specific transform. | |
const FCDTransform * | GetTransform (size_t index) const |
See above. | |
FCDTransformList & | GetTransforms () |
Retrieves the list of transforms for this node of the scene graph. | |
const FCDTransformList & | GetTransforms () const |
See above. | |
FCDTransform * | AddTransform (FCDTransform::Type type, size_t index=(size_t)-1) |
Creates a new transform for this visual scene node. | |
void | ReleaseTransform (FCDTransform *transform) |
Releases a transform affecting this visual scene node. | |
virtual FCDEntity * | FindDaeId (const string &daeId) |
Retrieves the visual scene node with the given id. | |
float & | GetVisibility () |
Retrieves whether the visual scene node is visible. | |
const float & | GetVisibility () const |
See above. | |
void | SetVisibility (bool isVisible) |
Sets the visibility of the visual scene node. | |
bool | IsTarget () const |
Retrieves whether this visual scene node is the target of an entity. | |
bool | IsJoint () const |
Retrieves whether this visual scene node is a joint. | |
void | SetJointFlag (bool _isJoint) |
Sets whether a visual scene node is a joint. | |
FMMatrix44 | ToMatrix () const |
Retrieves the local transform for this visual scene node. | |
void | GenerateSampledMatrixAnimation (FloatList &keys, FMMatrix44List &values) |
Generates a list of local transform samples for this visual scene node. | |
void | IncrementTargetCount () |
[INTERNAL] Increments the number of entities target this node. | |
void | DecrementTargetCount () |
[INTERNAL] Decrements the number of entities target this node. | |
virtual FUStatus | LoadFromXML (xmlNode *sceneNode) |
[INTERNAL] Reads in the visual scene node from a given COLLADA XML tree node. | |
virtual xmlNode * | WriteToXML (xmlNode *parentNode) const |
[INTERNAL] Writes out the visual scene node to the given COLLADA XML tree node. |
This class is also used to represent COLLADA visual scene entities.
A visual scene node contains child scene nodes to make a tree. A visual scene node may appear multiple times within the scene graph, but checks are made to verify that there are no cycles within the graph.
A visual scene node also contained an ordered list of transformations and a list of entity instances.
|
Constructor: do not use directly. Instead, use the FCDSceneNode::AddChild function for child visual scene nodes or the FCDLibrary::AddEntity function for visual scenes.
|
|
Destructor: do not use directly. Instead, use the FCDSceneNode::ReleaseChild function for visual scene nodes or the FCDLibrary::ReleaseEntity function for visual scenes. |
|
Attaches a existing scene node to this visual scene node. This function will fail if attaching the given scene node to this visual scene node creates a cycle within the scene graph.
|
|
Creates a new child scene node.
|
|
Creates a new entity instance. Only geometric entities, controllers, light and cameras can be instantiated in the scene graph. To instantiate visual scene nodes, use the AddChildNode function.
|
|
Creates a new transform for this visual scene node. The transforms are processed in order and COLLADA is column-major. For row-major matrix stacks, such as DirectX, this implies that the transformations will be processed in reverse order. By default, a transform is added at the end of the list.
|
|
[INTERNAL] Decrements the number of entities target this node. To set targets, use the FCDTargetedEntity::SetTarget function. |
|
Retrieves the visual scene node with the given id. This function looks through the whole tree of visual scene nodes for the wanted COLLADA id.
Reimplemented from FCDEntity. |
|
Generates a list of local transform samples for this visual scene node. This function will permanently modify the transforms of this visual scene node.
|
|
Retrieves a specific child of the visual scene node.
|
|
Retrieves the list of children of the visual scene node.
|
|
Retrieves the number of child nodes for this visual scene node.
|
|
Retrieves a specific entity instance.
|
|
Retrieves the number of entity instances at this node of the scene graph.
|
|
Retrieves the list of entity instances at this node of the scene graph.
|
|
Retrieves a specific parent of the visual scene node.
|
|
Retrieves the number of parent nodes for this visual scene node.
|
|
Retrieves a specific transform.
|
|
Retrieves the number of transforms for this node of the scene graph.
|
|
Retrieves the list of transforms for this node of the scene graph.
|
|
Retrieves the type of the entity class.
Reimplemented from FCDEntity. |
|
Retrieves whether the visual scene node is visible. A hidden visual scene node will not be rendered but will still affect the world. This parameter is a floating-point value because it is animated. It should be intepreted as a Boolean value.
|
|
[INTERNAL] Increments the number of entities target this node. To set targets, use the FCDTargetedEntity::SetTarget function. |
|
Retrieves whether this visual scene node is a joint. Joints are called bones in 3dsMax. A joint is a scene node that is used in skinning.
|
|
Retrieves whether this visual scene node is the target of an entity.
|
|
[INTERNAL] Reads in the visual scene node from a given COLLADA XML tree node.
Reimplemented from FCDEntity. |
|
Releases an entity instance.
|
|
Releases a transform affecting this visual scene node.
|
|
Sets whether a visual scene node is a joint. Joints are called bones in 3dsMax. A joint is a scene node that is used in skinning.
|
|
Sets the visibility of the visual scene node. A hidden visual scene node will not be rendered but will still affect the world.
|
|
Retrieves the local transform for this visual scene node. This function does not handle or apply animations.
|
|
[INTERNAL] Writes out the visual scene node to the given COLLADA XML tree node.
Reimplemented from FCDEntity. |