Antkeeper
0.0.1
|
Base class for skeleton poses. More...
#include <pose.hpp>
Public Member Functions | |
pose (const skeleton &skeleton) | |
Constructs a pose. More... | |
constexpr | pose () noexcept=default |
Constructs an empty pose. More... | |
void | update () |
Updates the pose after one or more relative transforms have been changed. More... | |
virtual void | update (bone_index_type first_index, std::size_t bone_count) |
Updates a subset of the pose after one or more relative transforms have been changed. More... | |
void | set_relative_transform (bone_index_type index, const bone_transform_type &transform) |
Sets the relative transform describing a bone pose. More... | |
void | set_relative_translation (bone_index_type index, const bone_transform_type::vector_type &translation) |
Sets the relative translation of a bone pose. More... | |
void | set_relative_rotation (bone_index_type index, const bone_transform_type::quaternion_type &rotation) |
Sets the relative rotation of a bone pose. More... | |
void | set_relative_scale (bone_index_type index, const bone_transform_type::vector_type &scale) |
Sets the relative scale of a bone pose. More... | |
const skeleton * | get_skeleton () const noexcept |
Returns the skeleton with which the pose is associated. More... | |
const bone_transform_type & | get_relative_transform (bone_index_type index) const |
Returns the relative transform describing a bone pose. More... | |
const bone_transform_type & | get_absolute_transform (bone_index_type index) const |
Returns the absolute transform describing a bone pose. More... | |
Protected Attributes | |
const skeleton * | m_skeleton {nullptr} |
Skeleton with which the pose is associated. More... | |
std::vector< bone_transform_type > | m_relative_transforms |
Relative ransforms for each bone in a skeleton. More... | |
std::vector< bone_transform_type > | m_absolute_transforms |
Absolute transforms for each bone in a skeleton. More... | |
|
explicit |
|
constexprdefaultnoexcept |
Constructs an empty pose.
|
inline |
|
inline |
|
inlinenoexcept |
|
inline |
|
inline |
|
inline |
|
inline |
void pose::update | ( | ) |
|
virtual |
Updates a subset of the pose after one or more relative transforms have been changed.
first_index | Index of the first bone in the chain to update. |
bone_count | Number of bones in the chain to update. |
Reimplemented in rest_pose, and animation_pose.
|
protected |
|
protected |
|
protected |