SkeletonNode.hh
Go to the documentation of this file.
math::Matrix4d InverseBindTransform() const
Retrieve the inverse of the bind pose skeletal transform.
SkeletonNode(SkeletonNode *_parent, const std::string &_name, const std::string &_id, const SkeletonNodeType _type=JOINT)
Constructor.
void SetModelTransform(const math::Matrix4d &_trans, const bool _updateChildren=true)
Set the model transformation.
bool IsRootNode() const
Queries wether a node has no parent parent.
SkeletonNode * Child(const unsigned int _index) const
Find a child by index.
void UpdateChildrenTransforms()
Apply model transformations in order for each node in the tree.
SkeletonNode * ChildByName(const std::string &_name) const
Get child by name.
unsigned int RawTransformCount() const
Return the raw transformations count.
void SetTransform(const math::Matrix4d &_trans, const bool _updateChildren=true)
Set a transformation.
NodeTransform RawTransform(const unsigned int _i) const
Find a raw transformation.
bool HasInvBindTransform() const
Returns true if the node has inv bind transform. \detail to keep ABI compatibility,...
std::vector< NodeTransform > Transforms() const
Returns a copy of the array of transformations.
void SetType(const SkeletonNodeType _type)
Change the skeleton node type.
math::Matrix4d ModelTransform() const
Retrieve the model transform.
math::Matrix4d Transform() const
Get transform relative to parent.
SkeletonNodeType
enumeration of node types
Definition: SkeletonNode.hh:39
SkeletonNode * ChildById(const std::string &_id) const
Get child by string id.
void AddRawTransform(const NodeTransform &_t)
Add a raw transform.
void Reset(const bool _resetChildren)
Reset the transformation to the initial transformation.
std::vector< NodeTransform > RawTransforms() const
Retrieve the raw transformations.
unsigned int ChildCount() const
Returns the children count.
void SetInverseBindTransform(const math::Matrix4d &_invBM)
Assign the inverse of the bind pose skeletal transform.
void SetInitialTransform(const math::Matrix4d &_trans)
Sets the initial transformation.
std::map< unsigned int, SkeletonNode * > SkeletonNodeMap
Definition: SkeletonNode.hh:197
Forward declarations for the common classes.