A skeleton node. More...
#include <gz/common/SkeletonNode.hh>
Public Types | |
enum | SkeletonNodeType { NODE , JOINT } |
enumeration of node types More... | |
Public Member Functions | |
SkeletonNode (SkeletonNode *_parent) | |
Constructor. | |
SkeletonNode (SkeletonNode *_parent, const std::string &_name, const std::string &_id, const SkeletonNodeType _type=JOINT) | |
Constructor. | |
virtual | ~SkeletonNode () |
Destructor. | |
void | AddChild (SkeletonNode *_child) |
Add a new child. | |
void | AddRawTransform (const NodeTransform &_t) |
Add a raw transform. | |
SkeletonNode * | Child (const unsigned int _index) const |
Find a child by index. | |
SkeletonNode * | ChildById (const std::string &_id) const |
Get child by string id. | |
SkeletonNode * | ChildByName (const std::string &_name) const |
Get child by name. | |
unsigned int | ChildCount () const |
Returns the children count. | |
unsigned int | Handle () const |
Get the handle index. | |
void | Handle (const unsigned int _h) |
Assign a handle number. | |
bool | HasInvBindTransform () const |
Returns true if the node has inv bind transform. \detail to keep ABI compatibility, it checks if the inv bind transform is the default value of zero. | |
std::string | Id () const |
Returns the index. | |
void | Id (const std::string &_id) |
Change the id string. | |
math::Matrix4d | InverseBindTransform () const |
Retrieve the inverse of the bind pose skeletal transform. | |
bool | IsJoint () const |
Is a joint query. | |
bool | IsRootNode () const |
Queries wether a node has no parent parent. | |
math::Matrix4d | ModelTransform () const |
Retrieve the model transform. | |
std::string | Name () const |
Returns the name. | |
void | Name (const std::string &_name) |
Change the name. | |
SkeletonNode * | Parent () const |
Returns the parent node. | |
NodeTransform | RawTransform (const unsigned int _i) const |
Find a raw transformation. | |
unsigned int | RawTransformCount () const |
Return the raw transformations count. | |
std::vector< NodeTransform > | RawTransforms () const |
Retrieve the raw transformations. | |
void | Reset (const bool _resetChildren) |
Reset the transformation to the initial transformation. | |
void | SetInitialTransform (const math::Matrix4d &_trans) |
Sets the initial transformation. | |
void | SetInverseBindTransform (const math::Matrix4d &_invBM) |
Assign the inverse of the bind pose skeletal transform. | |
void | SetModelTransform (const math::Matrix4d &_trans, const bool _updateChildren=true) |
Set the model transformation. | |
void | SetParent (SkeletonNode *_parent) |
Set the parent node. | |
void | SetTransform (const math::Matrix4d &_trans, const bool _updateChildren=true) |
Set a transformation. | |
void | SetType (const SkeletonNodeType _type) |
Change the skeleton node type. | |
math::Matrix4d | Transform () const |
Get transform relative to parent. | |
std::vector< NodeTransform > | Transforms () const |
Returns a copy of the array of transformations. | |
void | UpdateChildrenTransforms () |
Apply model transformations in order for each node in the tree. | |
Detailed Description
A skeleton node.
Member Enumeration Documentation
◆ SkeletonNodeType
enum SkeletonNodeType |
Constructor & Destructor Documentation
◆ SkeletonNode() [1/2]
|
explicit |
Constructor.
- Parameters
-
[in] _parent The parent node
◆ SkeletonNode() [2/2]
SkeletonNode | ( | SkeletonNode * | _parent, |
const std::string & | _name, | ||
const std::string & | _id, | ||
const SkeletonNodeType | _type = JOINT |
||
) |
Constructor.
- Parameters
-
[in] _parent the parent node [in] _name name of node [in] _id Id of node [in] _type The type of this node
◆ ~SkeletonNode()
|
virtual |
Destructor.
Member Function Documentation
◆ AddChild()
void AddChild | ( | SkeletonNode * | _child | ) |
Add a new child.
- Parameters
-
[in] _child a child
◆ AddRawTransform()
void AddRawTransform | ( | const NodeTransform & | _t | ) |
Add a raw transform.
- Parameters
-
[in] _t the transform
◆ Child()
SkeletonNode * Child | ( | const unsigned int | _index | ) | const |
Find a child by index.
- Parameters
-
[in] _index the index
- Returns
- the child skeleton.
◆ ChildById()
SkeletonNode * ChildById | ( | const std::string & | _id | ) | const |
Get child by string id.
- Parameters
-
[in] _id the string id
- Returns
- the child skeleton or NULL if not found
◆ ChildByName()
SkeletonNode * ChildByName | ( | const std::string & | _name | ) | const |
Get child by name.
- Parameters
-
[in] _name the name of the child skeleton
- Returns
- the skeleton, or NULL if not found
◆ ChildCount()
unsigned int ChildCount | ( | ) | const |
Returns the children count.
- Returns
- the count
◆ Handle() [1/2]
unsigned int Handle | ( | ) | const |
Get the handle index.
- Returns
- the handle index
◆ Handle() [2/2]
void Handle | ( | const unsigned int | _h | ) |
Assign a handle number.
- Parameters
-
[in] _h the handle
◆ HasInvBindTransform()
bool HasInvBindTransform | ( | ) | const |
Returns true if the node has inv bind transform. \detail to keep ABI compatibility, it checks if the inv bind transform is the default value of zero.
- Returns
- true if the node has inv bind transform
◆ Id() [1/2]
std::string Id | ( | ) | const |
Returns the index.
- Returns
- the id string
◆ Id() [2/2]
void Id | ( | const std::string & | _id | ) |
Change the id string.
- Parameters
-
[in] _id the new id string
◆ InverseBindTransform()
math::Matrix4d InverseBindTransform | ( | ) | const |
Retrieve the inverse of the bind pose skeletal transform.
- Returns
- the transform
◆ IsJoint()
bool IsJoint | ( | ) | const |
Is a joint query.
- Returns
- true if the skeleton type is a joint, false otherwise
◆ IsRootNode()
bool IsRootNode | ( | ) | const |
Queries wether a node has no parent parent.
- Returns
- true if the node has no parent, fasle otherwise
◆ ModelTransform()
math::Matrix4d ModelTransform | ( | ) | const |
Retrieve the model transform.
- Returns
- the transform
◆ Name() [1/2]
std::string Name | ( | ) | const |
Returns the name.
- Returns
- the name
◆ Name() [2/2]
void Name | ( | const std::string & | _name | ) |
Change the name.
- Parameters
-
[in] _name the new name
◆ Parent()
SkeletonNode * Parent | ( | ) | const |
Returns the parent node.
- Returns
- the parent
◆ RawTransform()
NodeTransform RawTransform | ( | const unsigned int | _i | ) | const |
Find a raw transformation.
- Parameters
-
[in] _i the index of the transformation
- Returns
- the node transform.
◆ RawTransformCount()
unsigned int RawTransformCount | ( | ) | const |
Return the raw transformations count.
- Returns
- the count
◆ RawTransforms()
std::vector< NodeTransform > RawTransforms | ( | ) | const |
Retrieve the raw transformations.
- Returns
- an array of transformations
◆ Reset()
void Reset | ( | const bool | _resetChildren | ) |
Reset the transformation to the initial transformation.
- Parameters
-
[in] _resetChildren when true, performs the operation for every node in the tree
◆ SetInitialTransform()
void SetInitialTransform | ( | const math::Matrix4d & | _trans | ) |
Sets the initial transformation.
- Parameters
-
[in] _trans the transfromation matrix
◆ SetInverseBindTransform()
void SetInverseBindTransform | ( | const math::Matrix4d & | _invBM | ) |
Assign the inverse of the bind pose skeletal transform.
- Parameters
-
[in] _invBM the transform
◆ SetModelTransform()
void SetModelTransform | ( | const math::Matrix4d & | _trans, |
const bool | _updateChildren = true |
||
) |
Set the model transformation.
- Parameters
-
[in] _trans the transformation [in] _updateChildren when true the UpdateChildrenTransforms operation is performed
◆ SetParent()
void SetParent | ( | SkeletonNode * | _parent | ) |
Set the parent node.
- Parameters
-
[in] _parent the new parent
◆ SetTransform()
void SetTransform | ( | const math::Matrix4d & | _trans, |
const bool | _updateChildren = true |
||
) |
Set a transformation.
- Parameters
-
[in] _trans the transformation [in] _updateChildren when true the UpdateChildrenTransforms operation is performed
◆ SetType()
void SetType | ( | const SkeletonNodeType | _type | ) |
Change the skeleton node type.
- Parameters
-
[in] _type the new type
◆ Transform()
math::Matrix4d Transform | ( | ) | const |
Get transform relative to parent.
◆ Transforms()
std::vector< NodeTransform > Transforms | ( | ) | const |
Returns a copy of the array of transformations.
- Returns
- the array of transform (These are the same as the raw trans)
◆ UpdateChildrenTransforms()
void UpdateChildrenTransforms | ( | ) |
Apply model transformations in order for each node in the tree.
The documentation for this class was generated from the following file: