KrisLibrary  1.0.0
RigidRobot3DCSpace.h
1 #ifndef RIGID_ROBOT_2D_CSPACE_H
2 #define RIGID_ROBOT_2D_CSPACE_H
3 
4 #include <KrisLibrary/geometry/AnyGeometry.h>
5 
8 class RigidRobot3DCSpace : public SE3CSpace, ExplicitCSpace
9 {
10 public:
12  void DrawWorkspaceGL() const;
13  void DrawRobotGL(const Config& q) const;
14  void DrawGL(const Config& q) const;
15 
16  virtual int NumObstacles();
17  virtual std::string ObstacleName(int obstacle);
18  virtual bool IsFeasible(const Config& x);
19  virtual bool IsFeasible(const Config& x,int obstacle);
20  virtual EdgePlannerPtr PathChecker(const InterpolatorPtr& path);
21  virtual EdgePlannerPtr PathChecker(const InterpolatorPtr& path,int obstacle);
22  virtual void Properties(PropertyMap&) const;
23 
24  std::vector<Geometry::AnyCollisionGeometry3D> obstacles;
26 };
27 
28 #endif
Vector Config
an alias for Vector
Definition: RobotKinematics3D.h:14
a translating and rotating 2D robot in a 2D workspace.
Definition: RigidRobot3DCSpace.h:8
An AnyGeometry with collision detection information.
Definition: AnyGeometry.h:98
The space of rigid body transforms SE(3). Still need to implement IsFeasible, PathChecker.
Definition: RigidBodyCSpace.h:96
A simple map from keys to values.
Definition: PropertyMap.h:27