CS::Animation::iSkeletonFactory Struct Reference
[Mesh plugins]
A skeleton factory is an object defining the base pose and topology from which CS::Animation::iSkeleton instances can be created. More...
#include <imesh/skeleton2.h>
Inheritance diagram for CS::Animation::iSkeletonFactory:
Public Member Functions | |
virtual csPtr< iSkeleton > | CreateSkeleton ()=0 |
Create a skeleton instance from this skeleton factory. | |
virtual csString | Description () const =0 |
Return a textual representation of the bone tree of this skeleton factory. | |
virtual iSkeletonAnimPacketFactory * | GetAnimationPacket () const =0 |
Get the animation packet associated with this skeleton. | |
virtual bool | GetAutoStart ()=0 |
Set whether or not the skeleton should start its animation automatically after its initialization. | |
virtual const csArray < CS::Animation::BoneID > & | GetBoneOrderList ()=0 |
Return an ordered list of the bones. | |
virtual const char * | GetName () const =0 |
Get the name of the skeleton factory. | |
virtual void | SetAnimationPacket (iSkeletonAnimPacketFactory *fact)=0 |
Set the animation packet associated with this skeleton. | |
virtual void | SetAutoStart (bool autostart)=0 |
Set whether or not the skeleton should start its animation automatically after its initialization. | |
Bone handling | |
virtual BoneID | CreateBone (BoneID parent=CS::Animation::InvalidBoneID)=0 |
Create a new bone with the given parent bone. | |
virtual BoneID | FindBone (const char *name) const =0 |
Find the ID of a bone from its name. | |
virtual const char * | GetBoneName (BoneID bone) const =0 |
Get the name of a bone. | |
virtual BoneID | GetBoneParent (BoneID bone) const =0 |
Get the ID of the parent of the given bone. | |
virtual BoneID | GetTopBoneID () const =0 |
Get the highest bone ID used in skeleton. | |
virtual void | GetTransformAbsSpace (BoneID bone, csQuaternion &rot, csVector3 &offset) const =0 |
Get the transform of the bone in absolute space. | |
virtual void | GetTransformBoneSpace (BoneID bone, csQuaternion &rot, csVector3 &offset) const =0 |
Get the transform of the bone in bone space. | |
virtual bool | HasBone (BoneID bone) const =0 |
Return true if the bone with the given ID exists within this skeleton factory. | |
virtual void | RemoveBone (BoneID bone)=0 |
Remove a bone from the skeleton. | |
virtual void | SetBoneName (BoneID bone, const char *name)=0 |
Set a name of a bone for later identificaton. | |
virtual void | SetTransformAbsSpace (BoneID bone, const csQuaternion &rot, const csVector3 &offset)=0 |
Set the transform of the bone in absolute space. | |
virtual void | SetTransformBoneSpace (BoneID bone, const csQuaternion &rot, const csVector3 &offset)=0 |
Set the transform of the bone in bone space. |
Detailed Description
A skeleton factory is an object defining the base pose and topology from which CS::Animation::iSkeleton instances can be created.
A note on coordinate spaces, cause there are a few to keep track of. Within the skeleton factory there are two types coordinate spaces:
- Absolute space. Absolute space is defined by the skeleton , that is, the root bone(s) is defined in absolute space.
- Bone space. Bone space for every bone is defined by its parent.
Definition at line 124 of file skeleton2.h.
The documentation for this struct was generated from the following file:
- imesh/skeleton2.h
Generated for Crystal Space 2.0 by doxygen 1.6.1