1 #ifndef PMPL_COLLISION_DETECTION_VALIDITY_H_
2 #define PMPL_COLLISION_DETECTION_VALIDITY_H_
17 #include "nonstd/io.h"
89 virtual
bool IsInsideObstacle(const Point3d& _p, std::vector<
size_t>* _obstIdxs);
104 const
MultiBody* const _b, const std::
string& _caller) override;
114 const std::
string& _caller) override;
117 const std::
string& _caller) override;
130 const std::
string& _caller);
139 const std::
string& _caller);
149 const
MultiBody* const _multibody, const std::
string& _caller);
168 const
MultiBody* const _multibody, const std::
string& _caller);
176 const std::vector<
Robot*>& _robots, const std::
string& _caller);
Definition: CollisionDetectionMethod.h:19
Definition: CollisionDetectionValidityMethod.h:28
Definition: CollisionDetectionValidity.h:52
virtual bool IsValidImpl(Cfg &_cfg, CDInfo &_cdInfo, const std::string &_caller) override
Definition: CollisionDetectionValidity.cpp:208
CollisionDetectionValidityMethod::GroupCfg GroupCfg
Definition: CollisionDetectionValidity.h:59
virtual bool IsInInterRobotCollision(CDInfo &_cdInfo, Robot *const _robot, const std::vector< Robot * > &_robots, const std::string &_caller)
Definition: CollisionDetectionValidity.cpp:509
bool m_ignoreAdjacentLinks
Ignore adj links in self collisions.
Definition: CollisionDetectionValidity.h:195
virtual ~CollisionDetectionValidity()
std::unique_ptr< CollisionDetectionMethod > m_cdMethod
< Underlying collision detection object.
Definition: CollisionDetectionValidity.h:191
virtual bool IsInCollision(CDInfo &_cdInfo, const Cfg &_cfg, const std::string &_caller)
Definition: CollisionDetectionValidity.cpp:241
virtual bool IsInsideObstacle(const Point3d &_p) override
Definition: CollisionDetectionValidity.cpp:66
bool m_ignoreSelfCollision
Check self collisions.
Definition: CollisionDetectionValidity.h:193
virtual CollisionDetectionMethod * GetCDMethod() const noexcept override
Definition: CollisionDetectionValidity.cpp:59
CollisionDetectionValidity()
Definition: CollisionDetectionValidity.cpp:10
virtual bool IsMultiBodyCollision(CDInfo &_cdInfo, const MultiBody *const _a, const MultiBody *const _b, const std::string &_caller) override
Definition: CollisionDetectionValidity.cpp:169
virtual bool WorkspaceVisibility(const Point3d &_a, const Point3d &_b) override
Definition: CollisionDetectionValidity.cpp:123
bool m_ignoreSiblingCollisions
Ignore sibling links in self collisions.
Definition: CollisionDetectionValidity.h:196
virtual bool IsInBoundaryCollision(CDInfo &_cdInfo, const Cfg &_cfg)
Definition: CollisionDetectionValidity.cpp:443
virtual bool IsInSelfCollision(CDInfo &_cdInfo, const MultiBody *const _multibody, const std::string &_caller)
Definition: CollisionDetectionValidity.cpp:387
GroupCfg::Formation Formation
Definition: CollisionDetectionValidity.h:60
std::vector< MultiBody * > m_obstacleSubset
Subset of obstacles to check for.
Definition: CollisionDetectionValidity.h:197
virtual bool IsInObstacleCollision(CDInfo &_cdInfo, const MultiBody *const _multibody, const std::string &_caller)
Definition: CollisionDetectionValidity.cpp:466
virtual bool setObstacleSubset(const std::vector< MultiBody * > &_obstacleSubset)
Definition: CollisionDetectionValidity.cpp:556
bool m_interRobotCollision
Check inter-robot collisions.
Definition: CollisionDetectionValidity.h:194
Definition: GroupCfg.h:39
std::vector< size_t > Formation
Definition: GroupCfg.h:58
Definition: MultiBody.h:65