CS::Animation::iSkeletonIKNodeFactory Struct Reference
Factory for the Inverse Kinematics animation node. More...
#include <imesh/animnode/ik.h>
Public Member Functions | |
virtual CS::Animation::EffectorID | AddEffector (CS::Animation::iBodyChain *chain, BoneID bone, csOrthoTransform &transform)=0 |
Add an effector to this factory. | |
virtual CS::Animation::iBodySkeleton * | GetBodySkeleton () const =0 |
Get the physical description of the skeleton. | |
virtual CS::Animation::iSkeletonAnimNodeFactory * | GetChildNode () const =0 |
Return the child animation node of this node. | |
virtual void | RemoveEffector (CS::Animation::EffectorID effector)=0 |
Remove the given effector. | |
virtual void | SetBodySkeleton (CS::Animation::iBodySkeleton *skeleton)=0 |
Set the physical description of the skeleton. | |
virtual void | SetChildNode (CS::Animation::iSkeletonAnimNodeFactory *node)=0 |
Set the child animation node of this node. |
Detailed Description
Factory for the Inverse Kinematics animation node.
With Inverse Kinematics, you can generate an animation for a sub-part of the skeleton (a CS::Animation::iBodyChain) by specifying some geometrical constraints on some effectors placed on the skeleton. This can be used eg to grab an object or to avoid foot sliding problems within a locomotion system.
You must first define some effectors, ie some points on the skeleton. Then in the CS::Animation::iSkeletonIKNode, you will be able to define some geometric constraints on these effectors.
- See also:
- iSkeletonIKPhysicalNodeFactory
Definition at line 81 of file ik.h.
Member Function Documentation
virtual CS::Animation::EffectorID CS::Animation::iSkeletonIKNodeFactory::AddEffector | ( | CS::Animation::iBodyChain * | chain, | |
BoneID | bone, | |||
csOrthoTransform & | transform | |||
) | [pure virtual] |
Add an effector to this factory.
- Parameters:
-
chain The sub-part of the skeleton that is controlled by this node when the effector is constrained. bone The bone where sits the effector. transform The position of the effector, relatively to the bone.
virtual CS::Animation::iBodySkeleton* CS::Animation::iSkeletonIKNodeFactory::GetBodySkeleton | ( | ) | const [pure virtual] |
Get the physical description of the skeleton.
virtual CS::Animation::iSkeletonAnimNodeFactory* CS::Animation::iSkeletonIKNodeFactory::GetChildNode | ( | ) | const [pure virtual] |
Return the child animation node of this node.
virtual void CS::Animation::iSkeletonIKNodeFactory::RemoveEffector | ( | CS::Animation::EffectorID | effector | ) | [pure virtual] |
Remove the given effector.
virtual void CS::Animation::iSkeletonIKNodeFactory::SetBodySkeleton | ( | CS::Animation::iBodySkeleton * | skeleton | ) | [pure virtual] |
Set the physical description of the skeleton.
virtual void CS::Animation::iSkeletonIKNodeFactory::SetChildNode | ( | CS::Animation::iSkeletonAnimNodeFactory * | node | ) | [pure virtual] |
Set the child animation node of this node.
The IK controller will add its control on top of the animation of the child node. This child node is not mandatory.
It is valid to set a null reference as chid node.
The documentation for this struct was generated from the following file:
- imesh/animnode/ik.h
Generated for Crystal Space 2.0 by doxygen 1.6.1