Klamp't  0.9.0
ObjectPoseWidget.h
1 #ifndef OBJECT_POSE_WIDGET_H
2 #define OBJECT_POSE_WIDGET_H
3 
4 #include <KrisLibrary/GLdraw/Widget.h>
5 #include <KrisLibrary/GLdraw/TransformWidget.h>
6 #include <KrisLibrary/robotics/IK.h>
7 #include <Klampt/Modeling/RigidObject.h>
8 
9 namespace Klampt {
10 
17 class RigidObjectPoseWidget : public GLDraw::WidgetSet
18 {
19 public:
22  void Set(RigidObjectModel* object);
23 
24  const RigidTransform& Pose() const { return poser.T; }
25  void SetPose(const RigidTransform& q);
26 
27  virtual void DrawGL(Camera::Viewport& viewport) override;
28  virtual bool BeginDrag(int x,int y,Camera::Viewport& viewport,double& distance) override;
29  virtual void Drag(int dx,int dy,Camera::Viewport& viewport) override;
30  virtual void EndDrag() override;
31  virtual void Keypress(char c) override;
32 
33  RigidObjectModel* rigidObject;
34  GLDraw::TransformWidget poser;
35 };
36 
39 } //namespace Klampt
40 
41 #endif
A (static) rigid object that may be manipulated.
Definition: RigidObject.h:15
Definition: ContactDistance.h:6
Definition: ObjectPoseWidget.h:17