MRPT  1.9.9
Functions
Motion planning geometry utility functions

Detailed Description

(#include <mrpt/nav/nav_plan_geometry_utils.h>)

Collaboration diagram for Motion planning geometry utility functions:

Functions

bool mrpt::nav::collision_free_dist_segment_circ_robot (const mrpt::math::TPoint2D &p_start, const mrpt::math::TPoint2D &p_end, const double robot_radius, const mrpt::math::TPoint2D &obstacle, double &out_col_dist)
 Computes the collision-free distance for a linear segment path between two points, for a circular robot, and a point obstacle (ox,oy). More...
 
bool mrpt::nav::collision_free_dist_arc_circ_robot (const double arc_radius, const double robot_radius, const mrpt::math::TPoint2D &obstacle, double &out_col_dist)
 Computes the collision-free distance for a forward path (+X) circular arc path segment from pose (0,0,0) and radius of curvature R (>0 -> +Y, <0 -> -Y), a circular robot and a point obstacle (ox,oy). More...
 

Function Documentation

◆ collision_free_dist_arc_circ_robot()

bool mrpt::nav::collision_free_dist_arc_circ_robot ( const double  arc_radius,
const double  robot_radius,
const mrpt::math::TPoint2D obstacle,
double &  out_col_dist 
)

Computes the collision-free distance for a forward path (+X) circular arc path segment from pose (0,0,0) and radius of curvature R (>0 -> +Y, <0 -> -Y), a circular robot and a point obstacle (ox,oy).

Returns
true if a collision exists, and the distance along the path will be in out_col_dist; false otherwise.

Definition at line 78 of file nav_plan_geometry_utils.cpp.

References ASSERT_ABOVE_, M_PI, mrpt::math::norm(), R, mrpt::math::wrapTo2Pi(), mrpt::math::TPoint2D_data::x, and mrpt::math::TPoint2D_data::y.

Here is the call graph for this function:

◆ collision_free_dist_segment_circ_robot()

bool mrpt::nav::collision_free_dist_segment_circ_robot ( const mrpt::math::TPoint2D p_start,
const mrpt::math::TPoint2D p_end,
const double  robot_radius,
const mrpt::math::TPoint2D obstacle,
double &  out_col_dist 
)

Computes the collision-free distance for a linear segment path between two points, for a circular robot, and a point obstacle (ox,oy).

Returns
true if a collision exists, and the distance along the segment will be in out_col_dist; false otherwise.
Exceptions
std::runtime_errorIf the two points are closer than an epsilon (1e-10)

Definition at line 20 of file nav_plan_geometry_utils.cpp.

References ASSERT_ABOVE_, mrpt::math::TPoint2D::norm(), R, mrpt::math::solve_poly2(), mrpt::square(), mrpt::math::TPoint2D_data::x, and mrpt::math::TPoint2D_data::y.

Referenced by TEST().

Here is the call graph for this function:
Here is the caller graph for this function:



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 45d659fbb Tue Dec 10 18:21:14 2019 +0100 at mar dic 10 18:30:09 CET 2019