MRPT  2.0.3
PlannerRRT_common.h
Go to the documentation of this file.
1 /* +------------------------------------------------------------------------+
2  | Mobile Robot Programming Toolkit (MRPT) |
3  | https://www.mrpt.org/ |
4  | |
5  | Copyright (c) 2005-2020, Individual contributors, see AUTHORS file |
6  | See: https://www.mrpt.org/Authors - All rights reserved. |
7  | Released under BSD License. See: https://www.mrpt.org/License |
8  +------------------------------------------------------------------------+ */
9 
10 #pragma once
11 
12 #include <mrpt/graphs/TNodeID.h>
14 #include <mrpt/math/TPoint3D.h>
18 #include <cstdlib> // size_t
19 #include <string>
20 
21 namespace mrpt::nav
22 {
23 /** \addtogroup nav_planners Path planning
24  * \ingroup mrpt_nav_grp
25  * @{ */
26 
27 template <typename node_pose_t, typename world_limits_t>
29 {
30  node_pose_t start_pose, goal_pose;
31  /** Bounding box of the world, used to draw uniform random pose samples */
32  world_limits_t world_bbox_min, world_bbox_max;
33  /** World obstacles, as a point cloud */
35 };
36 
37 template <typename tree_t>
39 {
40  /** Whether the target was reached or not */
41  bool success{false};
42  /** Time spent (in secs) */
43  double computation_time{0};
44  /** Distance from best found path to goal */
45  double goal_distance;
46  /** Total cost of the best found path (cost ~~ Euclidean distance) */
47  double path_cost;
48  /** The ID of the best target node in the tree */
50  /** The set of target nodes within an acceptable distance to target
51  * (including `best_goal_node_id` and others) */
52  std::set<mrpt::graphs::TNodeID> acceptable_goal_node_ids;
53  /** The generated motion tree that explores free space starting at "start"
54  */
55  tree_t move_tree;
56 
58  : goal_distance(std::numeric_limits<double>::max()),
59  path_cost(std::numeric_limits<double>::max()),
61  {
62  }
63 };
64 
66 {
67  /** Maximum distance from a pose to target to accept it as a valid solution
68  * (meters). (Both acceptedDistToTarget & acceptedAngToTarget must be
69  * satisfied) */
70  double acceptedDistToTarget{0.1};
71  /** Maximum angle from a pose to target to accept it as a valid solution
72  * (rad). (Both acceptedDistToTarget & acceptedAngToTarget must be
73  * satisfied) */
75 
76  /** In seconds. 0 means no limit until a solution is found. */
77  double maxComputationTime{0.0};
78  /** In seconds. 0 means the first valid path will be returned. Otherwise,
79  * the algorithm will try to refine and find a better one. */
80  double minComputationTime{0.0};
81 
82  RRTEndCriteria() = default;
83 };
84 
86 {
87  /** The robot shape used when computing collisions; it's loaded from the
88  * config file/text as a single 2xN matrix in MATLAB format, first row are
89  * Xs, second are Ys, e.g:
90  * \code
91  * robot_shape = [-0.2 0.2 0.2 -0.2; -0.1 -0.1 0.1 0.1]
92  * \endcode
93  * \note PTGs will use only one of either `robot_shape` or
94  * `robot_shape_circular_radius`
95  */
97  /** The radius of a circular-shape-model of the robot shape.
98  * \note PTGs will use only one of either `robot_shape` or
99  * `robot_shape_circular_radius`
100  */
102 
103  /** (Default: ".") */
105 
106  /** Probabily of picking the goal as random target (in [0,1], default=0.05)
107  */
108  double goalBias{0.05};
109  /** (Very sensitive parameter!) Max length of each edge path (in meters,
110  * default=1.0) */
111  double maxLength{1.0};
112  /** Minimum distance [meters] to nearest node to accept creating a new one
113  * (default=0.10). (Any of minDistanceBetweenNewNodes and
114  * minAngBetweenNewNodes must be satisfied) */
116  /** Minimum angle [rad] to nearest node to accept creating a new one
117  * (default=15 deg) (Any of minDistanceBetweenNewNodes and
118  * minAngBetweenNewNodes must be satisfied) */
120  /** Display PTG construction info (default=true) */
121  bool ptg_verbose{true};
122 
123  /** Frequency (in iters) of saving tree state to debug log files viewable in
124  * SceneViewer3D (default=0, disabled) */
125  size_t save_3d_log_freq{0};
126 
128 };
129 
130 /** Virtual base class for TP-Space-based path planners */
132 {
133  public:
135  /** Parameters specific to this path solver algorithm */
137 
138  /** ctor */
140 
142  const mrpt::nav::TListPTGPtr& getPTGs() const { return m_PTGs; }
143  /** Options for renderMoveTree() */
145  {
146  /** Highlight the path from root towards this node (usually, the target)
147  */
149  /** (Default=1) Draw one out of N vehicle shapes along the highlighted
150  * path */
152 
157 
158  /** A scale factor to all XYZ corners (default=0, means auto determien
159  * from vehicle shape) */
160  double xyzcorners_scale{0};
161  /** (Default=false) */
163  /** (Default=10 meters) Set to 0 to disable */
165 
166  /** Robot color */
168  /** obstacles color */
170  /** local obstacles color */
172  /** START indication color */
174  /** END indication color */
180  float width_last_edge{3.f};
181  float width_normal_edge{1.f};
182  float width_optimal_edge{4.f};
185 
186  /** (Default=0.01) Height (Z coordinate) for the vehicle shapes. Helps
187  * making it in the "first plane" */
188  double vehicle_shape_z{0.01};
189  /** Robot line width for visualization - default 2.0 */
190  double vehicle_line_width{2.0};
191  /** (Default=true) */
192  bool draw_obstacles{true};
193 
194  std::string log_msg;
196  double log_msg_scale{0.2};
197 
200  x_rand_pose(nullptr),
201  x_nearest_pose(nullptr),
203  new_state(nullptr),
204  color_vehicle(0xFF, 0x00, 0x00, 0xFF),
205  color_obstacles(0x00, 0x00, 0xFF, 0x40),
206  color_local_obstacles(0x00, 0x00, 0xFF),
207  color_start(0x00, 0x00, 0x00, 0x00),
208  color_goal(0x00, 0x00, 0x00, 0x00),
209  color_ground_xy_grid(0xFF, 0xFF, 0xFF),
210  color_normal_edge(0x22, 0x22, 0x22, 0x40),
211  color_last_edge(0xff, 0xff, 0x00),
212  color_optimal_edge(0x00, 0x00, 0x00),
213  log_msg_position(0, 0, 0)
214  {
215  }
216 
217  virtual ~TRenderPlannedPathOptions() = default;
218  };
219 
220  template <typename node_pose_t, typename world_limits_t, typename tree_t>
221  void renderMoveTree(
224  const TPlannerResultTempl<tree_t>& result,
225  const TRenderPlannedPathOptions& options);
226 
227  protected:
229  bool m_initialized_PTG{false};
231  mrpt::maps::CSimplePointsMap m_local_obs; // Temporary map. Defined as a
232  // member to save realloc time
233  // between calls
234 
235  /** Load all PTG params from a config file source */
237  const mrpt::config::CConfigFileBase& cfgSource,
238  const std::string& sSectionName = std::string("PTG_CONFIG"));
239 
240  /** Must be called after setting all params (see
241  * `internal_loadConfig_PTG()`) and before calling `solve()` */
243 
245  const mrpt::maps::CPointsMap& in_map, mrpt::maps::CPointsMap& out_map,
246  const mrpt::poses::CPose2D& asSeenFrom, const double MAX_DIST_XY);
247 
248  void spaceTransformer(
249  const mrpt::maps::CSimplePointsMap& in_obstacles,
251  const double MAX_DIST, std::vector<double>& out_TPObstacles);
252 
254  const int tp_space_k_direction,
255  const mrpt::maps::CSimplePointsMap& in_obstacles,
257  const double MAX_DIST, double& out_TPObstacle_k);
258 
259 }; // end class PlannerTPS_VirtualBase
260 /** @} */
261 } // namespace mrpt::nav
262 #include "impl_renderMoveTree.h"
mrpt::nav::RRTAlgorithmParams::minDistanceBetweenNewNodes
double minDistanceBetweenNewNodes
Minimum distance [meters] to nearest node to accept creating a new one (default=0....
Definition: PlannerRRT_common.h:115
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::draw_shape_decimation
size_t draw_shape_decimation
(Default=1) Draw one out of N vehicle shapes along the highlighted path
Definition: PlannerRRT_common.h:151
impl_renderMoveTree.h
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::ground_xy_grid_frequency
double ground_xy_grid_frequency
(Default=10 meters) Set to 0 to disable
Definition: PlannerRRT_common.h:164
CParameterizedTrajectoryGenerator.h
mrpt::nav::TPlannerInputTempl::goal_pose
node_pose_t goal_pose
Definition: PlannerRRT_common.h:30
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::log_msg_scale
double log_msg_scale
Definition: PlannerRRT_common.h:196
mrpt::nav::PlannerTPS_VirtualBase::spaceTransformerOneDirectionOnly
void spaceTransformerOneDirectionOnly(const int tp_space_k_direction, const mrpt::maps::CSimplePointsMap &in_obstacles, const mrpt::nav::CParameterizedTrajectoryGenerator *in_PTG, const double MAX_DIST, double &out_TPObstacle_k)
Definition: PlannerRRT_common.cpp:221
mrpt::nav::TPlannerResultTempl::best_goal_node_id
mrpt::graphs::TNodeID best_goal_node_id
The ID of the best target node in the tree.
Definition: PlannerRRT_common.h:49
mrpt::math::TPoint3D_< double >
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_obstacles
mrpt::img::TColor color_obstacles
obstacles color
Definition: PlannerRRT_common.h:169
mrpt::system::CTimeLogger
A versatile "profiler" that logs the time spent within each pair of calls to enter(X)-leave(X),...
Definition: system/CTimeLogger.h:50
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::width_last_edge
float width_last_edge
Definition: PlannerRRT_common.h:180
mrpt::nav::TPlannerInputTempl::world_bbox_min
world_limits_t world_bbox_min
Bounding box of the world, used to draw uniform random pose samples.
Definition: PlannerRRT_common.h:32
mrpt::opengl::COpenGLScene
This class allows the user to create, load, save, and render 3D scenes using OpenGL primitives.
Definition: COpenGLScene.h:56
mrpt::nav::RRTAlgorithmParams::ptg_verbose
bool ptg_verbose
Display PTG construction info (default=true)
Definition: PlannerRRT_common.h:121
mrpt::nav::TListPTGPtr
std::vector< mrpt::nav::CParameterizedTrajectoryGenerator::Ptr > TListPTGPtr
A list of PTGs (smart pointers)
Definition: CParameterizedTrajectoryGenerator.h:517
mrpt::graphs::TNodeID
uint64_t TNodeID
A generic numeric type for unique IDs of nodes or entities.
Definition: TNodeID.h:16
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::width_normal_edge
float width_normal_edge
Definition: PlannerRRT_common.h:181
mrpt::nav
Definition: CAbstractHolonomicReactiveMethod.h:20
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::log_msg_position
mrpt::math::TPoint3D log_msg_position
Definition: PlannerRRT_common.h:195
mrpt::nav::TPlannerResultTempl::TPlannerResultTempl
TPlannerResultTempl()
Definition: PlannerRRT_common.h:57
mrpt::maps::CPointsMap
A cloud of points in 2D or 3D, which can be built from a sequence of laser scans or other sensors.
Definition: CPointsMap.h:67
mrpt::nav::PlannerTPS_VirtualBase::internal_loadConfig_PTG
void internal_loadConfig_PTG(const mrpt::config::CConfigFileBase &cfgSource, const std::string &sSectionName=std::string("PTG_CONFIG"))
Load all PTG params from a config file source.
Definition: PlannerRRT_common.cpp:92
mrpt::nav::RRTEndCriteria::minComputationTime
double minComputationTime
In seconds.
Definition: PlannerRRT_common.h:80
mrpt::nav::RRTAlgorithmParams
Definition: PlannerRRT_common.h:85
mrpt::nav::RRTAlgorithmParams::RRTAlgorithmParams
RRTAlgorithmParams()
Definition: PlannerRRT_common.cpp:21
mrpt::nav::PlannerTPS_VirtualBase::m_timelogger
mrpt::system::CTimeLogger m_timelogger
Definition: PlannerRRT_common.h:228
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::point_size_obstacles
int point_size_obstacles
Definition: PlannerRRT_common.h:183
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::log_msg
std::string log_msg
Definition: PlannerRRT_common.h:194
mrpt::nav::RRTAlgorithmParams::goalBias
double goalBias
Probabily of picking the goal as random target (in [0,1], default=0.05)
Definition: PlannerRRT_common.h:108
mrpt::nav::PlannerTPS_VirtualBase::params
RRTAlgorithmParams params
Parameters specific to this path solver algorithm.
Definition: PlannerRRT_common.h:136
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::~TRenderPlannedPathOptions
virtual ~TRenderPlannedPathOptions()=default
mrpt::nav::TPlannerResultTempl::goal_distance
double goal_distance
Distance from best found path to goal.
Definition: PlannerRRT_common.h:45
mrpt::nav::PlannerTPS_VirtualBase::PlannerTPS_VirtualBase
PlannerTPS_VirtualBase()
ctor
mrpt::nav::PlannerTPS_VirtualBase::spaceTransformer
void spaceTransformer(const mrpt::maps::CSimplePointsMap &in_obstacles, const mrpt::nav::CParameterizedTrajectoryGenerator *in_PTG, const double MAX_DIST, std::vector< double > &out_TPObstacles)
Definition: PlannerRRT_common.cpp:171
mrpt::nav::TPlannerResultTempl::acceptable_goal_node_ids
std::set< mrpt::graphs::TNodeID > acceptable_goal_node_ids
The set of target nodes within an acceptable distance to target (including best_goal_node_id and othe...
Definition: PlannerRRT_common.h:52
mrpt::nav::RRTEndCriteria::RRTEndCriteria
RRTEndCriteria()=default
mrpt::nav::PlannerTPS_VirtualBase::transformPointcloudWithSquareClipping
static void transformPointcloudWithSquareClipping(const mrpt::maps::CPointsMap &in_map, mrpt::maps::CPointsMap &out_map, const mrpt::poses::CPose2D &asSeenFrom, const double MAX_DIST_XY)
Definition: PlannerRRT_common.cpp:137
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::highlight_last_added_edge
bool highlight_last_added_edge
(Default=false)
Definition: PlannerRRT_common.h:162
mrpt::nav::PlannerTPS_VirtualBase::getProfiler
mrpt::system::CTimeLogger & getProfiler()
Definition: PlannerRRT_common.h:141
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::TRenderPlannedPathOptions
TRenderPlannedPathOptions()
Definition: PlannerRRT_common.h:198
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::x_rand_pose
const mrpt::poses::CPose2D * x_rand_pose
Definition: PlannerRRT_common.h:153
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_local_obstacles
mrpt::img::TColor color_local_obstacles
local obstacles color
Definition: PlannerRRT_common.h:171
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::xyzcorners_scale
double xyzcorners_scale
A scale factor to all XYZ corners (default=0, means auto determien from vehicle shape)
Definition: PlannerRRT_common.h:160
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_start
mrpt::img::TColor color_start
START indication color
Definition: PlannerRRT_common.h:173
mrpt::nav::RRTAlgorithmParams::save_3d_log_freq
size_t save_3d_log_freq
Frequency (in iters) of saving tree state to debug log files viewable in SceneViewer3D (default=0,...
Definition: PlannerRRT_common.h:125
COpenGLScene.h
mrpt::config::CConfigFileBase
This class allows loading and storing values and vectors of different types from a configuration text...
Definition: config/CConfigFileBase.h:44
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::draw_obstacles
bool draw_obstacles
(Default=true)
Definition: PlannerRRT_common.h:192
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_goal
mrpt::img::TColor color_goal
END indication color
Definition: PlannerRRT_common.h:175
mrpt::poses::CPose2D
A class used to store a 2D pose, including the 2D coordinate point and a heading (phi) angle.
Definition: CPose2D.h:39
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::vehicle_line_width
double vehicle_line_width
Robot line width for visualization - default 2.0.
Definition: PlannerRRT_common.h:190
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::vehicle_shape_z
double vehicle_shape_z
(Default=0.01) Height (Z coordinate) for the vehicle shapes.
Definition: PlannerRRT_common.h:188
mrpt::nav::TPlannerInputTempl::start_pose
node_pose_t start_pose
Definition: PlannerRRT_common.h:30
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_ground_xy_grid
mrpt::img::TColor color_ground_xy_grid
Definition: PlannerRRT_common.h:176
mrpt::nav::TPlannerResultTempl
Definition: PlannerRRT_common.h:38
mrpt::img::TColor
A RGB color - 8bit.
Definition: TColor.h:25
mrpt::maps::CSimplePointsMap
A cloud of points in 2D or 3D, which can be built from a sequence of laser scans.
Definition: CSimplePointsMap.h:30
mrpt::nav::TPlannerResultTempl::path_cost
double path_cost
Total cost of the best found path (cost ~~ Euclidean distance)
Definition: PlannerRRT_common.h:47
mrpt::nav::PlannerTPS_VirtualBase::m_initialized_PTG
bool m_initialized_PTG
Definition: PlannerRRT_common.h:229
mrpt::nav::TPlannerInputTempl::world_bbox_max
world_limits_t world_bbox_max
Definition: PlannerRRT_common.h:32
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions
Options for renderMoveTree()
Definition: PlannerRRT_common.h:144
mrpt::nav::TPlannerResultTempl::success
bool success
Whether the target was reached or not.
Definition: PlannerRRT_common.h:41
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_vehicle
mrpt::img::TColor color_vehicle
Robot color
Definition: PlannerRRT_common.h:167
mrpt::math::TPolygon2D
2D polygon, inheriting from std::vector<TPoint2D>.
Definition: TPolygon2D.h:21
mrpt::nav::RRTAlgorithmParams::robot_shape_circular_radius
double robot_shape_circular_radius
The radius of a circular-shape-model of the robot shape.
Definition: PlannerRRT_common.h:101
mrpt::DEG2RAD
constexpr double DEG2RAD(const double x)
Degrees to radians
Definition: core/include/mrpt/core/bits_math.h:47
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::highlight_path_to_node_id
mrpt::graphs::TNodeID highlight_path_to_node_id
Highlight the path from root towards this node (usually, the target)
Definition: PlannerRRT_common.h:148
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::new_state
const mrpt::poses::CPose2D * new_state
Definition: PlannerRRT_common.h:156
mrpt::nav::RRTAlgorithmParams::ptg_cache_files_directory
std::string ptg_cache_files_directory
(Default: ".")
Definition: PlannerRRT_common.h:104
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_optimal_edge
mrpt::img::TColor color_optimal_edge
Definition: PlannerRRT_common.h:179
mrpt::nav::RRTEndCriteria::maxComputationTime
double maxComputationTime
In seconds.
Definition: PlannerRRT_common.h:77
mrpt::nav::TPlannerInputTempl::obstacles_points
mrpt::maps::CSimplePointsMap obstacles_points
World obstacles, as a point cloud.
Definition: PlannerRRT_common.h:34
mrpt::nav::PlannerTPS_VirtualBase::getPTGs
const mrpt::nav::TListPTGPtr & getPTGs() const
Definition: PlannerRRT_common.h:142
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::width_optimal_edge
float width_optimal_edge
Definition: PlannerRRT_common.h:182
mrpt::nav::PlannerTPS_VirtualBase::m_local_obs
mrpt::maps::CSimplePointsMap m_local_obs
Definition: PlannerRRT_common.h:231
mrpt::nav::PlannerTPS_VirtualBase::internal_initialize_PTG
void internal_initialize_PTG()
Must be called after setting all params (see internal_loadConfig_PTG()) and before calling solve()
Definition: PlannerRRT_common.cpp:34
mrpt::nav::TPlannerResultTempl::move_tree
tree_t move_tree
The generated motion tree that explores free space starting at "start".
Definition: PlannerRRT_common.h:55
mrpt::nav::RRTAlgorithmParams::minAngBetweenNewNodes
double minAngBetweenNewNodes
Minimum angle [rad] to nearest node to accept creating a new one (default=15 deg) (Any of minDistance...
Definition: PlannerRRT_common.h:119
mrpt::nav::RRTEndCriteria::acceptedDistToTarget
double acceptedDistToTarget
Maximum distance from a pose to target to accept it as a valid solution (meters).
Definition: PlannerRRT_common.h:70
CTimeLogger.h
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::point_size_local_obstacles
int point_size_local_obstacles
Definition: PlannerRRT_common.h:184
TPoint3D.h
mrpt::nav::TPlannerInputTempl
Definition: PlannerRRT_common.h:28
TNodeID.h
mrpt::nav::RRTEndCriteria::acceptedAngToTarget
double acceptedAngToTarget
Maximum angle from a pose to target to accept it as a valid solution (rad).
Definition: PlannerRRT_common.h:74
mrpt::nav::TPlannerResultTempl::computation_time
double computation_time
Time spent (in secs)
Definition: PlannerRRT_common.h:43
mrpt::nav::RRTEndCriteria
Definition: PlannerRRT_common.h:65
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::x_nearest_pose
const mrpt::poses::CPose2D * x_nearest_pose
Definition: PlannerRRT_common.h:154
INVALID_NODEID
#define INVALID_NODEID
Definition: TNodeID.h:19
CSimplePointsMap.h
mrpt::nav::RRTAlgorithmParams::robot_shape
mrpt::math::TPolygon2D robot_shape
The robot shape used when computing collisions; it's loaded from the config file/text as a single 2xN...
Definition: PlannerRRT_common.h:96
mrpt::nav::PlannerTPS_VirtualBase::m_PTGs
mrpt::nav::TListPTGPtr m_PTGs
Definition: PlannerRRT_common.h:230
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::local_obs_from_nearest_pose
const mrpt::maps::CPointsMap * local_obs_from_nearest_pose
Definition: PlannerRRT_common.h:155
mrpt::nav::PlannerTPS_VirtualBase
Virtual base class for TP-Space-based path planners.
Definition: PlannerRRT_common.h:131
mrpt::nav::PlannerTPS_VirtualBase::renderMoveTree
void renderMoveTree(mrpt::opengl::COpenGLScene &scene, const TPlannerInputTempl< node_pose_t, world_limits_t > &pi, const TPlannerResultTempl< tree_t > &result, const TRenderPlannedPathOptions &options)
Definition: impl_renderMoveTree.h:23
mrpt::nav::CParameterizedTrajectoryGenerator
This is the base class for any user-defined PTG.
Definition: CParameterizedTrajectoryGenerator.h:78
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_normal_edge
mrpt::img::TColor color_normal_edge
Definition: PlannerRRT_common.h:177
mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_last_edge
mrpt::img::TColor color_last_edge
Definition: PlannerRRT_common.h:178
mrpt::nav::RRTAlgorithmParams::maxLength
double maxLength
(Very sensitive parameter!) Max length of each edge path (in meters, default=1.0)
Definition: PlannerRRT_common.h:111
mrpt::nav::PlannerTPS_VirtualBase::end_criteria
RRTEndCriteria end_criteria
Definition: PlannerRRT_common.h:134



Page generated by Doxygen 1.8.17 for MRPT 2.0.3 at Fri May 15 15:49:54 UTC 2020