Atoms Crowd
7.0.0
|
#include <Pose.h>
Public Types | |
typedef std::map< unsigned short, MapMetadata > | JointMetadataMap |
Joint metadata map. | |
Public Member Functions | |
Pose () | |
Constructor. | |
Pose (const Skeleton *skeleton, bool inParentSpace=false) | |
Constructor. More... | |
Pose (const Pose &rhs) | |
Copy constructor. | |
~Pose () | |
Destructor. | |
Pose & | operator= (const Pose &rhs) |
Assign operator. | |
void | setNumberJoints (unsigned short n) |
Sets the number of joints. More... | |
unsigned short | numJoints () const |
Gets the number of joints. More... | |
JointPose & | jointPose (unsigned short index) |
Gets the joint pose. More... | |
const JointPose & | jointPose (unsigned short index) const |
Gets the joint pose. More... | |
void | setJointPose (unsigned short index, const JointPose &jointPose) |
Sets the joint pose. More... | |
void | clearAllPose () |
Clears all pose. | |
void | setDirection (const AtomsCore::Vector3 &direction) |
Sets the pose direction. More... | |
const AtomsCore::Vector3 & | getDirection () const |
Gets the pose direction. More... | |
bool | jointHasMetadata (unsigned short index) const |
Checks if a joint has some metadata. More... | |
JointMetadataMap & | jointsMetadata () |
Gets the joints metadata map. More... | |
const JointMetadataMap & | jointsMetadata () const |
Gets the joints metadata map. More... | |
MapMetadata & | jointMetadata (unsigned short index) |
Gets the joint metadata. More... | |
const MapMetadata & | jointMetadata (unsigned short index) const |
Gets the joint metadata. More... | |
void | setJointMetadata (unsigned short index, const MapMetadata &data) |
Adds joint metadata. More... | |
void | addJointMetadata (unsigned short index, const std::string &key, Metadata *data) |
Adds joint metadata. More... | |
void | addJointMetadata (unsigned short index, const std::string &key, const AtomsPtr< Metadata > data) |
Adds joint metadata. More... | |
void | clearJointMetadata (unsigned short index) |
Clears joint metadata. More... | |
MapMetadata & | poseMetadata () |
Gets the pose metadata map. More... | |
const MapMetadata & | poseMetadata () const |
Gets the pose metadata map. More... | |
void | addPoseMetadata (const std::string &key, Metadata *data) |
Adds the pose metadata. More... | |
void | clearPoseMetadata () |
Clears the pose metadata. | |
void | clearJointsMetadata () |
Clears all joint metadata. | |
size_t | memSize () const |
Gets the memory size. | |
std::vector< unsigned short > | jointMetadataIds () const |
Gets the ids of the joints that have some metadatas. | |
size_t | hash (short roundBits=10) const |
Return the hash of this pose. More... | |
void | resetActiveJoints () |
void | setActiveJoints (const std::vector< short > &flags) |
void | setActiveJoint (size_t index, bool value) |
bool | isJointActive (size_t index) const |
void | setInParentSpace (bool flag) |
Sets use parent space flag. | |
bool | inParentSpace () const |
Gets the parent space flag. | |
void | convertToParentSpace (const Skeleton *skeleton) |
Converts this pose to parent space. | |
void | convertToLocalSpace (const Skeleton *skeleton) |
Converts this pose to local space. | |
Pose class.
A pose defines the transformations and metadatas of a set of joints.
AtomsCore::Pose::Pose | ( | const Skeleton * | skeleton, |
bool | inParentSpace = false |
||
) |
Constructor.
skeleton | Skeleton |
|
inline |
Adds joint metadata.
index | Joint index |
key | metadata map key |
data | metadata |
|
inline |
Adds joint metadata.
index | Joint index |
key | metadata map key |
data | metadata |
|
inline |
Adds the pose metadata.
key | metadata key |
data | metadata |
void AtomsCore::Pose::clearJointMetadata | ( | unsigned short | index | ) |
Clears joint metadata.
index | Joint index |
|
inline |
Gets the pose direction.
size_t AtomsCore::Pose::hash | ( | short | roundBits = 10 | ) | const |
Return the hash of this pose.
The hash is computed without the root joint
bool AtomsCore::Pose::jointHasMetadata | ( | unsigned short | index | ) | const |
Checks if a joint has some metadata.
index | Joint index |
|
inline |
const MapMetadata& AtomsCore::Pose::jointMetadata | ( | unsigned short | index | ) | const |
|
inline |
Gets the joint pose.
|
inline |
Gets the joint pose.
|
inline |
Gets the joints metadata map.
|
inline |
Gets the joints metadata map.
|
inline |
Gets the number of joints.
|
inline |
Gets the pose metadata map.
|
inline |
Gets the pose metadata map.
|
inline |
Sets the pose direction.
direction | pelvis direction |
|
inline |
|
inline |
Sets the joint pose.
index | joint index |
jointPose | Joint pose |
void AtomsCore::Pose::setNumberJoints | ( | unsigned short | n | ) |
Sets the number of joints.
Sets the number of joints this pose contains. All the data previosly stored is deleted before reallocate the space for the new number of joints
n | Number of joint |