Main MRPT website > C++ reference for MRPT 1.5.3
nav_plan_geometry_utils.h
Go to the documentation of this file.
1 /* +---------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | http://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2017, Individual contributors, see AUTHORS file |
6  | See: http://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See details in http://www.mrpt.org/License |
8  +---------------------------------------------------------------------------+ */
9 
10 #pragma once
11 
13 #include <mrpt/nav/link_pragmas.h>
14 
15 namespace mrpt
16 {
17  namespace nav
18  {
19  /** @addtogroup nav_geom_grp Motion planning geometry utility functions (`#include <mrpt/nav/nav_plan_geometry_utils.h>`)
20  * \ingroup mrpt_nav_grp
21  * @{ */
22 
23  /** Computes the collision-free distance for a linear segment path between two points, for a circular robot, and a point obstacle (ox,oy).
24  * \return true if a collision exists, and the distance along the segment will be in out_col_dist; false otherwise.
25  * \exception std::runtime_error If the two points are closer than an epsilon (1e-10)
26  */
27  bool NAV_IMPEXP 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 );
28 
29  /** 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),
30  * a circular robot and a point obstacle (ox,oy).
31  * \return true if a collision exists, and the distance along the path will be in out_col_dist; false otherwise.
32  */
33  bool NAV_IMPEXP collision_free_dist_arc_circ_robot(const double arc_radius, const double robot_radius, const mrpt::math::TPoint2D &obstacle, double &out_col_dist);
34 
35  /** @} */
36  }
37 }
bool NAV_IMPEXP 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).
bool NAV_IMPEXP 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...
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
Lightweight 2D point.



Page generated by Doxygen 1.8.13 for MRPT 1.5.3 at Tue Oct 31 07:27:35 UTC 2017