gramods
PoseTransform.hh
1 
2 #ifndef GRAMODS_GRAPHICS_POSETRANSFORM
3 #define GRAMODS_GRAPHICS_POSETRANSFORM
4 
5 // Required before gmCore/OFactory.hh for some compilers
6 #include <gmCore/io_eigen.hh>
7 
8 #include <gmGraphics/Transform.hh>
9 
10 BEGIN_NAMESPACE_GMGRAPHICS;
11 
15 class PoseTransform : public Transform {
16 
17 public:
18  PoseTransform();
19  ~PoseTransform();
20 
28  void setPosition(Eigen::Vector3f p);
29 
33  Eigen::Vector3f getPosition();
34 
42  void setOrientation(Eigen::Quaternionf q);
43 
47  Eigen::Quaternionf getOrientation();
48 
56  void setOrientationCenter(Eigen::Vector3f c);
57 
61  Eigen::Vector3f getOrientationCenter();
62 
70  void setScale(Eigen::Vector3f p);
71 
75  Eigen::Vector3f getScale();
76 
84  void setScaleCenter(Eigen::Vector3f c);
85 
89  Eigen::Vector3f getScaleCenter();
90 
98  void setScaleOrientation(Eigen::Quaternionf q);
99 
103  Eigen::Quaternionf getScaleOrientation();
104 
108  Eigen::Affine3f getTransform() override;
109 
110  GM_OFI_DECLARE;
111 
112 private:
113  struct Impl;
114  std::unique_ptr<Impl> _impl;
115 };
116 
117 END_NAMESPACE_GMGRAPHICS;
118 
119 #endif
The scenegraph PoseTransform base.
Definition: PoseTransform.hh:15
The scenegraph transform base.
Definition: Transform.hh:12
Definition: PoseTransform.cpp:16