17 #ifndef _SKELETONANIMATION_HH_
18 #define _SKELETONANIMATION_HH_
48 public:
void SetName(
const std::string& _name);
52 public: std::string GetName()
const;
57 public:
void AddKeyFrame(
const double _time,
const math::Matrix4 &_trans);
62 public:
void AddKeyFrame(
const double _time,
const math::Pose &_pose);
66 public:
unsigned int GetFrameCount()
const;
74 public:
void GetKeyFrame(
const unsigned int _i,
double& _time,
82 public: std::pair<double, math::Matrix4> GetKeyFrame(
83 const unsigned int _i)
const;
87 public:
double GetLength()
const;
95 public:
math::Matrix4 GetFrameAt(
double _time,
bool _loop =
true)
const;
100 public:
void Scale(
const double _scale);
108 public:
double GetTimeAtX(
const double _x)
const;
133 public:
void SetName(
const std::string& _name);
137 public: std::string GetName()
const;
141 public:
unsigned int GetNodeCount()
const;
146 public:
bool HasNode(
const std::string& _node)
const;
152 public:
void AddKeyFrame(
const std::string& _node,
const double _time,
159 public:
void AddKeyFrame(
const std::string& _node,
const double _time,
171 public:
math::Matrix4 GetNodePoseAt(
const std::string& _node,
172 const double _time,
const bool _loop =
true);
182 public: std::map<std::string, math::Matrix4> GetPoseAt(
const double _time,
183 const bool _loop =
true)
const;
193 public: std::map<std::string, math::Matrix4> GetPoseAtX(
const double _x,
194 const std::string& _node,
const bool _loop =
true)
const;
198 public:
void Scale(
const double _scale);
202 public:
double GetLength()
const;