Developer Documentation
|
Represents a single joint in the skeleton. More...
#include <ObjectTypes/Skeleton/JointT.hh>
Public Types | |
typedef PointT | Point |
typedef Point::value_type | Scalar |
typedef JointT< PointT > | Joint |
typedef std::vector< Joint * > ::iterator | ChildIter |
Public Member Functions | |
JointT (const Joint &_other) | |
Constructor. More... | |
JointT (Joint *_parent, std::string _name="") | |
Default constructor, creates a joint pointing to the origin. | |
~JointT () | |
Destructor. | |
unsigned int | id () |
returns the joint id More... | |
void | setParent (Joint *_newParent, SkeletonT< PointT > &_skeleton) |
access parent of the joint More... | |
Joint * | parent () |
Returns the parent joint. More... | |
bool | isRoot () |
std::string | name () |
Access the name of the joint. | |
void | setName (std::string _name) |
Child access | |
Use this iterator to access the joints child nodes | |
ChildIter | begin () |
Returns an iterator on the joints children. | |
ChildIter | end () |
Returns the end iterator for the joints children. | |
size_t | size () |
Returns the number of children. | |
Joint * | child (size_t _index) |
Returns the child joint with the given index. More... | |
Selections | |
change and access selection state | |
bool | selected () |
Returns the joint's selection state. | |
void | setSelected (bool _selected) |
Set the joint's selction state. | |
Protected Member Functions | |
void | setId (unsigned int _id) |
Protected Attributes | |
Joint * | parent_ |
The parent joint; this joint is in its parents JointT::children_ vector. It's 0 for the root node. | |
std::vector< Joint * > | children_ |
The joints children, use the JointT::getChild method to access them. | |
std::string | name_ |
the name of the joint | |
Private Attributes | |
unsigned int | id_ |
An unique identifier, guaranteed to be part of a continuous sequence starting from 0. | |
bool | selected_ |
Friends | |
template<class > | |
class | SkeletonT |
Represents a single joint in the skeleton.
The skeleton is made up by a hierarchical structure of joints. The joints don't store their position themselves. Instead, the joint positions are stored in poses. The poses are managed by the AnimationT class and the skeleton.
Constructor.
Copy constructor, creates an incomplete copy of the given joint.
The parent and children cannot be copied, since they are provided as pointers only. Furthermore, if a skeleton is being cloned the corresponding joints may not yet exist in this skeleton.
|
inline |
|
inline |
access parent of the joint
Replaces this joints parent joint.
After calling this method this joint is child of the given joint. Keep in mind that this will corrupt the joints local matrix in all poses.
_newParent | The new parent joint |
_skeleton | The skeleton this joint is part of, used to update the poses local matrices |