|
Collision Checker
|
Classes | |
| class | BoostCollisionObject |
| class | BoostObjectInternal |
| class | BoostPolygon |
| BoostPolygon allows to use boost.Geometry functions for Polygon objects. More... | |
| class | IBoostCollisionObject |
| class | ISolverEntity_Boost |
| class | SolverEntity_Boost |
| struct | SolverEntity_BoostDeleter |
Typedefs | |
| typedef std::shared_ptr< const BoostCollisionObject > | BoostCollisionObjectConstPtr |
| typedef boost::geometry::model::d2::point_xy< double > | bg_point_type |
| typedef boost::geometry::model::polygon< bg_point_type > | bg_polygon_type |
| typedef std::shared_ptr< BoostPolygon > | BoostPolygonPtr |
| typedef std::shared_ptr< const BoostPolygon > | BoostPolygonConstPtr |
| typedef boost::geometry::model::multi_polygon< bg_polygon_type > | bg_mpolygon_type |
Enumerations | |
| enum | BOOST_COLLISION_ENTITY_TYPE { BOOST_COLLISION_ENTITY_TYPE_INVALID = -1, BOOST_COLLISION_ENTITY_TYPE_UNKNOWN = 0, COLLISION_ENTITY_TYPE_BOOST_OBJECT = 200 } |
Functions | |
| bool | boost_within (const BoostPolygon &polyg1, const BoostPolygon &polyg2) |
| Returns true if the BoostPolygon polyg1 is completely contained within the other BoostPolygon object polyg2. More... | |
| int | boost_poly_poly_convex_hull (const Polygon &pos1, const Polygon &pos2, collision::PolygonConstPtr &resPoly) |
| Creates a collision Polygon of two RectangleOBB objects. The convex hull of the boolean union of the oriented rectangles is computed. More... | |
| int | boost_ccd_convex_hull_collision (const ShapeGroup &sg, const RectangleOBB &pos1, const RectangleOBB &pos2, bool &res) |
| Checks if the convex hull of the Boolean union of two given OBB boxes collides with any of the ShapeGroup objects. More... | |
| int | boost_ccd_obb_sum_collision (const ShapeGroup &sg, const RectangleOBB &pos1, const RectangleOBB &pos2, bool &res) |
| int | boost_polygon_enclosure (const ShapeGroup &sg, const RectangleOBB &obb, bool &res) |
| template<typename T > | |
| int | boost_polygon_enclosure_grid (T &grid, std::vector< BoostPolygon *> polygons, AABB &aabb, const BoostPolygon *obj_poly, bool &res) |
| int | boost_ccd_convex_hull_polygon_enclosure (const ShapeGroup &sg, const RectangleOBB &pos1, const RectangleOBB &pos2, bool &res) |
| int | boost_ccd_obb_sum_polygon_enclosure (const ShapeGroup &sg, const RectangleOBB &pos1, const RectangleOBB &pos2, bool &res) |
| collision::ShapeGroupPtr | lane_polygons_postprocess (collision::ShapeGroup &sg_polys, double buf_width, bool triangulate) |
| const BoostCollisionObject * | get_boost_object_ptr (const CollisionObject *obj) |
| SolverEntity_Boost * | createBoostSolverEntity (const CollisionObjectEx *obj) |
| int | boost_obb_obb_convex_hull (const RectangleOBB &pos1, const RectangleOBB &pos2, collision::PolygonConstPtr &resPoly) |
| int | boost_get_candidate_polygons_no_merge (const ShapeGroup &sg, const Shape &shape, std::vector< bg_polygon_type > &mpoly) |
| template int | boost_polygon_enclosure_grid< ContainerGrid< HorizontalGrid > > (ContainerGrid< HorizontalGrid > &grid, std::vector< BoostPolygon *> polygons, AABB &aabb, const BoostPolygon *obj_poly, bool &res) |
| template int | boost_polygon_enclosure_grid< ContainerGrid< VerticalGrid > > (ContainerGrid< VerticalGrid > &grid, std::vector< BoostPolygon *> polygons, AABB &aabb, const BoostPolygon *obj_poly, bool &res) |
| typedef boost::geometry::model::multi_polygon<bg_polygon_type> collision::solvers::solverBoost::bg_mpolygon_type |
Definition at line 21 of file boost_collision_queries.cc.
| typedef boost::geometry::model::d2::point_xy<double> collision::solvers::solverBoost::bg_point_type |
Definition at line 22 of file boost_object_polygon.h.
| typedef boost::geometry::model::polygon<bg_point_type> collision::solvers::solverBoost::bg_polygon_type |
Definition at line 23 of file boost_object_polygon.h.
| typedef std::shared_ptr<const BoostCollisionObject> collision::solvers::solverBoost::BoostCollisionObjectConstPtr |
Definition at line 56 of file boost_collision_object.h.
| typedef std::shared_ptr<const BoostPolygon> collision::solvers::solverBoost::BoostPolygonConstPtr |
Definition at line 28 of file boost_object_polygon.h.
| typedef std::shared_ptr<BoostPolygon> collision::solvers::solverBoost::BoostPolygonPtr |
Definition at line 25 of file boost_object_polygon.h.
| Enumerator | |
|---|---|
| BOOST_COLLISION_ENTITY_TYPE_INVALID | |
| BOOST_COLLISION_ENTITY_TYPE_UNKNOWN | |
| COLLISION_ENTITY_TYPE_BOOST_OBJECT | |
Definition at line 7 of file boost_entity_type.h.
| int collision::solvers::solverBoost::boost_ccd_convex_hull_collision | ( | const ShapeGroup & | sg, |
| const RectangleOBB & | pos1, | ||
| const RectangleOBB & | pos2, | ||
| bool & | res | ||
| ) |
Checks if the convex hull of the Boolean union of two given OBB boxes collides with any of the ShapeGroup objects.
Returns 0 if no error has occured.
| [in] | sg | ShapeGroup with static obstacles |
| [in] | pos1 | OBB rectangle 1 |
| [in] | pos2 | OBB rectangle 2 |
| [out] | res | Boolean collision result |
Definition at line 112 of file boost_collision_queries.cc.
| int collision::solvers::solverBoost::boost_ccd_convex_hull_polygon_enclosure | ( | const ShapeGroup & | sg, |
| const RectangleOBB & | pos1, | ||
| const RectangleOBB & | pos2, | ||
| bool & | res | ||
| ) |
Definition at line 236 of file boost_collision_queries.cc.
| int collision::solvers::solverBoost::boost_ccd_obb_sum_collision | ( | const ShapeGroup & | sg, |
| const RectangleOBB & | pos1, | ||
| const RectangleOBB & | pos2, | ||
| bool & | res | ||
| ) |
Definition at line 125 of file boost_collision_queries.cc.
| int collision::solvers::solverBoost::boost_ccd_obb_sum_polygon_enclosure | ( | const ShapeGroup & | sg, |
| const RectangleOBB & | pos1, | ||
| const RectangleOBB & | pos2, | ||
| bool & | res | ||
| ) |
Definition at line 285 of file boost_collision_queries.cc.
|
inline |
Definition at line 136 of file boost_collision_queries.cc.
|
inline |
Definition at line 70 of file boost_collision_queries.cc.
| int collision::solvers::solverBoost::boost_poly_poly_convex_hull | ( | const Polygon & | pos1, |
| const Polygon & | pos2, | ||
| collision::PolygonConstPtr & | resPoly | ||
| ) |
Creates a collision Polygon of two RectangleOBB objects. The convex hull of the boolean union of the oriented rectangles is computed.
Returns 0 on successful creation.
| [in] | pos1 | OBB rectangle 1 |
| [in] | pos2 | OBB rectangle 2 |
| [out] | resPoly | output collision Polygon |
Definition at line 46 of file boost_collision_queries.cc.
| int collision::solvers::solverBoost::boost_polygon_enclosure | ( | const ShapeGroup & | sg, |
| const RectangleOBB & | obb, | ||
| bool & | res | ||
| ) |
Definition at line 159 of file boost_collision_queries.cc.
| int collision::solvers::solverBoost::boost_polygon_enclosure_grid | ( | T & | grid, |
| std::vector< BoostPolygon *> | polygons, | ||
| AABB & | aabb, | ||
| const BoostPolygon * | obj_poly, | ||
| bool & | res | ||
| ) |
Definition at line 193 of file boost_collision_queries.cc.
| template int collision::solvers::solverBoost::boost_polygon_enclosure_grid< ContainerGrid< HorizontalGrid > > | ( | ContainerGrid< HorizontalGrid > & | grid, |
| std::vector< BoostPolygon *> | polygons, | ||
| AABB & | aabb, | ||
| const BoostPolygon * | obj_poly, | ||
| bool & | res | ||
| ) |
| template int collision::solvers::solverBoost::boost_polygon_enclosure_grid< ContainerGrid< VerticalGrid > > | ( | ContainerGrid< VerticalGrid > & | grid, |
| std::vector< BoostPolygon *> | polygons, | ||
| AABB & | aabb, | ||
| const BoostPolygon * | obj_poly, | ||
| bool & | res | ||
| ) |
| bool collision::solvers::solverBoost::boost_within | ( | const BoostPolygon & | polyg1, |
| const BoostPolygon & | polyg2 | ||
| ) |
Returns true if the BoostPolygon polyg1 is completely contained within the other BoostPolygon object polyg2.
Definition at line 28 of file boost_collision_queries.cc.
| SolverEntity_Boost* collision::solvers::solverBoost::createBoostSolverEntity | ( | const CollisionObjectEx * | obj | ) |
Definition at line 12 of file solver_entity_boost_factory.h.
|
inline |
Definition at line 10 of file boost_helpers.h.
| collision::ShapeGroupPtr collision::solvers::solverBoost::lane_polygons_postprocess | ( | collision::ShapeGroup & | sg_polys, |
| double | buf_width, | ||
| bool | triangulate | ||
| ) |
Definition at line 11 of file boost_geometry_queries.cc.