Collision Checker
primitive_collision_checker.h
Go to the documentation of this file.
1 #ifndef PRIMITIVE_COLLISION_CHECKER_H_
2 #define PRIMITIVE_COLLISION_CHECKER_H_
3 
4 #include <sstream>
5 #include <vector>
8 
9 #include "i_collision_checker.h"
10 
11 namespace collision {
12 
14 typedef std::shared_ptr<PrimitiveCollisionChecker> PrimitiveCollisionCheckerPtr;
15 typedef std::shared_ptr<const PrimitiveCollisionChecker>
17 
25  public:
26  EIGEN_MAKE_ALIGNED_OPERATOR_NEW
27 
29  bool collide(CollisionObjectConstPtr co) const;
31  CollisionObjectConstPtr &obstacle) const;
33  std::vector<CollisionObjectConstPtr> &obstacles) const;
34  PrimitiveCollisionCheckerPtr windowQuery(const RectangleAABB &aabb) const;
35  PrimitiveCollisionCheckerPtr timeSlice(int time_idx) const;
36  void print(std::ostringstream &stream) const;
37  int numberOfObstacles() const;
38  std::vector<CollisionObjectConstPtr> getObstacles() const;
39 
40  private:
41  std::vector<CollisionObjectConstPtr> collision_objects_;
42 };
43 
44 } // namespace collision
45 
46 #endif
std::shared_ptr< const PrimitiveCollisionChecker > PrimitiveCollisionCheckerConstPtr
std::shared_ptr< PrimitiveCollisionChecker > PrimitiveCollisionCheckerPtr
EIGEN_MAKE_ALIGNED_OPERATOR_NEW void addCollisionObject(CollisionObjectConstPtr co)
std::vector< CollisionObjectConstPtr > getObstacles() const
PrimitiveCollisionCheckerPtr windowQuery(const RectangleAABB &aabb) const
std::shared_ptr< const CollisionObject > CollisionObjectConstPtr
bool collide(CollisionObjectConstPtr co) const
PrimitiveCollisionCheckerPtr timeSlice(int time_idx) const
PrimitiveCollisionChecker can group any kinds of CollisionObjects.
void print(std::ostringstream &stream) const
Axis-aligned rectangle.
External interface to a CollisionChecker (with or without an acceleration structure) ...