#include <animation_naive_blend_scheduler.h>
Public Member Functions | |
NaiveBlendScheduler () | |
void | clear () |
void | add (animation_interface *animation) |
void | remove (animation_interface *animation) |
real_type | compute_duration () |
void | compute_pose (skeleton_type &skeleton, real_type const &global_time) |
Protected Types | |
typedef skeleton_type_ | skeleton_type |
typedef skeleton_type::bone_type | bone_type |
typedef skeleton_type::math_types | math_types |
typedef math_types::coordsys_type | coordsys_type |
typedef math_types::real_type | real_type |
typedef Interface< skeleton_type > | animation_interface |
typedef std::list < animation_interface * > | animation_ptr_container |
typedef animation_ptr_container::iterator | animation_ptr_iterator |
typedef boost::indirect_iterator < animation_ptr_iterator, animation_interface > | animation_iterator |
Protected Attributes | |
animation_ptr_container | m_animations |
A collection of animations that should be blended. |
A Blend Scheduler. This class provides a naïve, simple, and primitive blend scheduler.
It performs a straightforward simple flat blend of the added animations in an incremental fashion.
typedef Interface<skeleton_type> OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::animation_interface [protected] |
typedef boost::indirect_iterator<animation_ptr_iterator,animation_interface> OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::animation_iterator [protected] |
typedef std::list<animation_interface*> OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::animation_ptr_container [protected] |
typedef animation_ptr_container::iterator OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::animation_ptr_iterator [protected] |
typedef skeleton_type::bone_type OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::bone_type [protected] |
typedef math_types::coordsys_type OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::coordsys_type [protected] |
typedef skeleton_type::math_types OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::math_types [protected] |
typedef math_types::real_type OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::real_type [protected] |
typedef skeleton_type_ OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::skeleton_type [protected] |
OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::NaiveBlendScheduler | ( | ) | [inline] |
void OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::add | ( | animation_interface * | animation | ) | [inline] |
void OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::clear | ( | void | ) | [inline] |
real_type OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::compute_duration | ( | void | ) | [inline] |
Compute Duration of Animation.
void OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::compute_pose | ( | skeleton_type & | skeleton, | |
real_type const & | global_time | |||
) | [inline] |
Compute Pose. This method determines how to blend all animations into one resulting pose.
skeleton | ||
global_time |
void OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::remove | ( | animation_interface * | animation | ) | [inline] |
animation_ptr_container OpenTissue::animation::NaiveBlendScheduler< skeleton_type_ >::m_animations [protected] |
A collection of animations that should be blended.