36 #if ENABLE_COLLISION_TESTS == 1 50 &obj_vec)
const override;
59 std::shared_ptr<const collision::RectangleAABB>
getAABB()
const;
67 void toString(std::ostringstream &stream)
const;
69 bool rayTrace(
const Eigen::Vector2d &point1,
const Eigen::Vector2d &point2,
70 std::vector<LineSegment> &intersect)
const;
77 virtual void print(std::ostringstream &stream)
const;
82 std::vector<ShapeConstPtr>
unpack()
const;
93 std::list<CollisionObjectConstPtr>> &parent_map)
const;
96 std::list<CollisionObjectConstPtr>> &parent_map,
100 std::list<int> &retlist)
const override;
103 std::vector<ShapeConstPtr> shapes_;
104 std::unordered_map<const CollisionObject *, std::list<int>> shapes_map_;
int getCollisionObjects(std::vector< fcl::CollisionObject< FCL_PRECISION > *> &obj_vec) const override
std::vector< std::set< int > > overlapMap(const ShapeGroup &sg) const
Returns lists of all objects from the other ShapeGroup that collide with each object of this ShapeGro...
virtual CollisionObjectConstPtr timeSlice(int time_idx, CollisionObjectConstPtr shared_ptr_this) const
std::shared_ptr< const Shape > ShapeConstPtr
FCL_COLLISION_ENTITY_TYPE
std::vector< ShapeConstPtr > unpack() const
Returns Vector of all shapes contained inside the ShapeGroup.
std::shared_ptr< const RectangleAABB > RectangleAABBConstPtr
std::shared_ptr< const collision::RectangleAABB > getAABB() const
ShapeGroup can contain simple shapes.
virtual CollisionObjectType getCollisionObjectType() const
bool rayTrace(const Eigen::Vector2d &point1, const Eigen::Vector2d &point2, std::vector< LineSegment > &intersect) const
std::shared_ptr< const CollisionObject > CollisionObjectConstPtr
void toString(std::ostringstream &stream) const
int elementCount(void) const
Returns count of contained objects.
ShapeGroupConstPtr windowQuery(collision::RectangleAABBConstPtr aabb) const
virtual FCL_COLLISION_ENTITY_TYPE getFclEntityType(void) const
std::shared_ptr< const ShapeGroup > ShapeGroupConstPtr
std::vector< std::pair< int, int > > overlap(const ShapeGroup &sg) const
Returns Vector of pairs of indexes of the intersecting objects within the ShapeGroup and another Shap...
virtual void print(std::ostringstream &stream) const
std::shared_ptr< ShapeGroup > ShapeGroupPtr
int queryContainedObjectIndexList(const CollisionObject *, std::list< int > &retlist) const override
virtual const ISolverEntity_FCL * getFclInterface() const override
Base class for CollisionObjects and some of their groups.
void addToGroup(ShapeConstPtr shape)
Adds a simple shape to the ShapeGroup.
const ICollisionContainer * getContainerInterface(void) const override
virtual void addParentMap(std::unordered_map< const CollisionObject *, std::list< CollisionObjectConstPtr >> &parent_map) const
Provides functionality to use different collision solvers.
CollisionObjectClass getCollisionObjectClass() const