Parasol Planning Library (PPL)
PQPCollisionDetection.h
Go to the documentation of this file.
1 #ifndef PMPL_PQP_COLLISION_DETECTION_H_
2 #define PMPL_PQP_COLLISION_DETECTION_H_
3 
5 
6 class GMSPolyhedron;
7 class PQP_Model;
8 
9 
23 class PQP : public CollisionDetectionMethod {
24 
25  public:
26 
29 
30  PQP();
31 
32  virtual ~PQP();
33 
37 
41  static PQP_Model* Build(const GMSPolyhedron& _polyhedron);
42 
46 
47  virtual bool IsInCollision(
48  const GMSPolyhedron& _polyhedron1, const mathtool::Transformation& _t1,
49  const GMSPolyhedron& _polyhedron2, const mathtool::Transformation& _t2,
50  CDInfo& _cdInfo) override;
51 
53 
54 };
55 
56 
63 class PQPSolid : public PQP {
64 
65  public:
66 
69 
70  PQPSolid();
71 
72  virtual ~PQPSolid();
73 
77 
78  virtual bool IsInCollision(
79  const GMSPolyhedron& _polyhedron1, const mathtool::Transformation& _t1,
80  const GMSPolyhedron& _polyhedron2, const mathtool::Transformation& _t2,
81  CDInfo& _cdInfo) override;
82 
88  virtual bool IsInsideObstacle(const mathtool::Vector3d& _point,
89  const GMSPolyhedron& _polyhedron,
90  const mathtool::Transformation& _transformation) override;
91 
93 
94  private:
95 
98 
102  PQP_Model* BuildPseudoRay() const;
103 
105 
106 };
107 
108 #endif
Definition: CollisionDetectionMethod.h:19
Definition: GMSPolyhedron.h:42
Definition: PQPCollisionDetection.h:63
PQPSolid()
Definition: PQPCollisionDetection.cpp:117
virtual bool IsInCollision(const GMSPolyhedron &_polyhedron1, const mathtool::Transformation &_t1, const GMSPolyhedron &_polyhedron2, const mathtool::Transformation &_t2, CDInfo &_cdInfo) override
Definition: PQPCollisionDetection.cpp:129
virtual bool IsInsideObstacle(const mathtool::Vector3d &_point, const GMSPolyhedron &_polyhedron, const mathtool::Transformation &_transformation) override
Definition: PQPCollisionDetection.cpp:151
virtual ~PQPSolid()
Definition: PQPCollisionDetection.h:23
PQP()
Definition: PQPCollisionDetection.cpp:20
static PQP_Model * Build(const GMSPolyhedron &_polyhedron)
Definition: PQPCollisionDetection.cpp:30
virtual ~PQP()
virtual bool IsInCollision(const GMSPolyhedron &_polyhedron1, const mathtool::Transformation &_t1, const GMSPolyhedron &_polyhedron2, const mathtool::Transformation &_t2, CDInfo &_cdInfo) override
Definition: PQPCollisionDetection.cpp:52
Definition: CDInfo.h:139