KeyFrame.hh
00001 #ifndef KEYFRAME_HH 00002 #define KEYFRAME_HH 00003 00004 #include "math/Vector3.hh" 00005 #include "math/Quaternion.hh" 00006 00007 namespace gazebo 00008 { 00009 namespace common 00010 { 00011 class KeyFrame 00012 { 00013 public: KeyFrame(double _time); 00014 public: virtual ~KeyFrame(); 00015 00016 public: double GetTime() const; 00017 00018 protected: double time; 00019 }; 00020 00021 class PoseKeyFrame : public KeyFrame 00022 { 00023 public: PoseKeyFrame(double _time); 00024 public: virtual ~PoseKeyFrame(); 00025 00026 public: void SetTranslate(const math::Vector3 &_trans); 00027 public: const math::Vector3 &GetTranslate() const; 00028 00029 public: void SetRotation(const math::Quaternion &_rot); 00030 public: const math::Quaternion &GetRotation() const; 00031 00032 protected: math::Vector3 translate; 00033 protected: math::Quaternion rotate; 00034 }; 00035 00036 class NumericKeyFrame : public KeyFrame 00037 { 00038 public: NumericKeyFrame(double _time); 00039 public: virtual ~NumericKeyFrame(); 00040 00041 00042 public: void SetValue(const double &_value); 00043 public: const double &GetValue() const; 00044 00045 protected: double value; 00046 }; 00047 } 00048 } 00049 #endif

1.7.5.1