CrystalSpace

Public API Reference

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:

List of all members.

Public Member Functions

virtual csPtr< iSkeletonCreateSkeleton ()=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:

Definition at line 124 of file skeleton2.h.


The documentation for this struct was generated from the following file:

Generated for Crystal Space 2.0 by doxygen 1.6.1