17 #ifndef IGNITION_COMMON_ANIMATION_HH_ 18 #define IGNITION_COMMON_ANIMATION_HH_ 26 #include <ignition/common/graphics/Export.hh> 34 class NumericKeyFrame;
46 const double _length,
const bool _loop);
53 public:
double Length()
const;
57 public:
void Length(
const double _len);
61 public:
void Time(
const double _time);
65 public:
void AddTime(
const double _time);
69 public:
double Time()
const;
73 public:
unsigned int KeyFrameCount()
const;
86 protected:
double KeyFramesAtTime(
89 unsigned int &_firstKeyIndex)
const;
95 #pragma warning(disable: 4251) 131 const double _length,
const bool _loop);
139 public:
PoseKeyFrame *CreateKeyFrame(
const double _time);
143 public:
void InterpolatedKeyFrame(
PoseKeyFrame &_kf)
const;
148 protected:
void InterpolatedKeyFrame(
const double _time,
152 protected:
void BuildInterpolationSplines()
const;
169 const double _length,
const bool _loop);
double length
animation duration
Definition: Animation.hh:102
bool build
determines if the interpolation splines need building
Definition: Animation.hh:108
Manages an animation, which is a collection of keyframes and the ability to interpolate between the k...
Definition: Animation.hh:39
std::vector< common::KeyFrame * > KeyFrame_V
array of keyframe type alias
Definition: Animation.hh:114
A numeric animation.
Definition: Animation.hh:162
std::string name
animation name
Definition: Animation.hh:99
A Time class, can be used to hold wall- or sim-time. stored as sec and nano-sec.
Definition: Time.hh:33
bool loop
true if animation repeats
Definition: Animation.hh:111
A pose animation.
Definition: Animation.hh:124
A key frame in an animation.
Definition: KeyFrame.hh:30
A keyframe for a NumericAnimation.
Definition: KeyFrame.hh:90
KeyFrame_V keyFrames
array of key frames
Definition: Animation.hh:117
Forward declarations for the common classes.
double timePos
current time position
Definition: Animation.hh:105
A keyframe for a PoseAnimation.
Definition: KeyFrame.hh:48