CrystalSpace

Public API Reference

CS::Animation::iSkeletonChain Struct Reference

A skeleton chain is a subtree of the skeleton of an CS::Mesh::iAnimatedMesh. More...

#include <imesh/skeletonmodel.h>

Inheritance diagram for CS::Animation::iSkeletonChain:

List of all members.

Public Member Functions

virtual bool AddAllSubChains ()=0
 Add all sub-child of the root node of this chain.
virtual bool AddSubChain (CS::Animation::BoneID subBone)=0
 Add a sub-chain to this chain, ie all nodes from the root of the chain to the given subBone.
virtual csString Description () const =0
 Print the hierarchical structure of this bone chain to the standard output.
virtual const char * GetName () const =0
 Get the name of this skeleton chain.
virtual iSkeletonChainNodeGetRootNode ()=0
 Get the root node of this chain.
virtual iSkeletonModelGetSkeletonModel ()=0
 Get the associated physical description of the skeleton.
virtual void PopulateBoneMask (csBitArray &boneMask) const =0
 Populate the given bone mask with the bones of this chain.

Detailed Description

A skeleton chain is a subtree of the skeleton of an CS::Mesh::iAnimatedMesh.

It is used to apply varying animation controllers on different parts of the skeleton.

Definition at line 258 of file skeletonmodel.h.


Member Function Documentation

virtual bool CS::Animation::iSkeletonChain::AddAllSubChains (  )  [pure virtual]

Add all sub-child of the root node of this chain.

Returns:
True upon success, false otherwise (this should never happen although)
virtual bool CS::Animation::iSkeletonChain::AddSubChain ( CS::Animation::BoneID  subBone  )  [pure virtual]

Add a sub-chain to this chain, ie all nodes from the root of the chain to the given subBone.

For example, if you want to create a chain for the two legs of a human body, you should set the pelvis as the root node, and call this method once for each foot.

Returns:
True upon success, false otherwise (ie the subBone has not been found as a sub-child of the root of this chain)
virtual csString CS::Animation::iSkeletonChain::Description (  )  const [pure virtual]

Print the hierarchical structure of this bone chain to the standard output.

virtual const char* CS::Animation::iSkeletonChain::GetName (  )  const [pure virtual]

Get the name of this skeleton chain.

virtual iSkeletonChainNode* CS::Animation::iSkeletonChain::GetRootNode (  )  [pure virtual]

Get the root node of this chain.

virtual iSkeletonModel* CS::Animation::iSkeletonChain::GetSkeletonModel (  )  [pure virtual]

Get the associated physical description of the skeleton.

virtual void CS::Animation::iSkeletonChain::PopulateBoneMask ( csBitArray boneMask  )  const [pure virtual]

Populate the given bone mask with the bones of this chain.

The bit mask will not be reset before populating it, but its size will be grown if needed to the count of bones in the skeleton.


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

Generated for Crystal Space 2.1 by doxygen 1.6.1