MRPT  2.0.4
List of all members | Classes | Public Member Functions | Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes
mrpt::nav::PlannerTPS_VirtualBase Class Reference

Detailed Description

Virtual base class for TP-Space-based path planners.

Definition at line 131 of file PlannerRRT_common.h.

#include <mrpt/nav/planners/PlannerRRT_common.h>

Inheritance diagram for mrpt::nav::PlannerTPS_VirtualBase:

Classes

struct  TRenderPlannedPathOptions
 Options for renderMoveTree() More...
 

Public Member Functions

 PlannerTPS_VirtualBase ()
 ctor More...
 
mrpt::system::CTimeLoggergetProfiler ()
 
const mrpt::nav::TListPTGPtrgetPTGs () const
 
template<typename node_pose_t , typename world_limits_t , typename tree_t >
void renderMoveTree (mrpt::opengl::COpenGLScene &scene, const TPlannerInputTempl< node_pose_t, world_limits_t > &pi, const TPlannerResultTempl< tree_t > &result, const TRenderPlannedPathOptions &options)
 

Public Attributes

RRTEndCriteria end_criteria
 
RRTAlgorithmParams params
 Parameters specific to this path solver algorithm. More...
 

Protected Member Functions

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. More...
 
void internal_initialize_PTG ()
 Must be called after setting all params (see internal_loadConfig_PTG()) and before calling solve() More...
 
void spaceTransformer (const mrpt::maps::CSimplePointsMap &in_obstacles, const mrpt::nav::CParameterizedTrajectoryGenerator *in_PTG, const double MAX_DIST, std::vector< double > &out_TPObstacles)
 
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)
 

Static Protected Member Functions

static void transformPointcloudWithSquareClipping (const mrpt::maps::CPointsMap &in_map, mrpt::maps::CPointsMap &out_map, const mrpt::poses::CPose2D &asSeenFrom, const double MAX_DIST_XY)
 

Protected Attributes

mrpt::system::CTimeLogger m_timelogger
 
bool m_initialized_PTG {false}
 
mrpt::nav::TListPTGPtr m_PTGs
 
mrpt::maps::CSimplePointsMap m_local_obs
 

Constructor & Destructor Documentation

◆ PlannerTPS_VirtualBase()

PlannerTPS_VirtualBase::PlannerTPS_VirtualBase ( )
default

ctor

Member Function Documentation

◆ getProfiler()

mrpt::system::CTimeLogger& mrpt::nav::PlannerTPS_VirtualBase::getProfiler ( )
inline

Definition at line 141 of file PlannerRRT_common.h.

References m_timelogger.

◆ getPTGs()

const mrpt::nav::TListPTGPtr& mrpt::nav::PlannerTPS_VirtualBase::getPTGs ( ) const
inline

Definition at line 142 of file PlannerRRT_common.h.

References m_PTGs.

◆ internal_initialize_PTG()

void PlannerTPS_VirtualBase::internal_initialize_PTG ( )
protected

Must be called after setting all params (see internal_loadConfig_PTG()) and before calling solve()

Definition at line 34 of file PlannerRRT_common.cpp.

References ASSERTMSG_, mrpt::format(), mrpt::math::TPolygon2D::getPlotData(), m_initialized_PTG, m_PTGs, m_timelogger, params, mrpt::nav::RRTAlgorithmParams::ptg_cache_files_directory, mrpt::nav::RRTAlgorithmParams::ptg_verbose, mrpt::nav::RRTAlgorithmParams::robot_shape, and mrpt::nav::RRTAlgorithmParams::robot_shape_circular_radius.

Referenced by mrpt::nav::PlannerRRT_SE2_TPS::initialize().

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

◆ internal_loadConfig_PTG()

void PlannerTPS_VirtualBase::internal_loadConfig_PTG ( const mrpt::config::CConfigFileBase cfgSource,
const std::string &  sSectionName = std::string("PTG_CONFIG") 
)
protected

Load all PTG params from a config file source.

Definition at line 92 of file PlannerRRT_common.cpp.

References ASSERT_, mrpt::math::CMatrixDynamic< T >::cols(), mrpt::nav::CParameterizedTrajectoryGenerator::CreatePTG(), mrpt::format(), mrpt::math::MatrixVectorBase< Scalar, Derived >::fromMatlabStringFormat(), m_PTGs, params, mrpt::config::CConfigFileBase::read_double(), mrpt::config::CConfigFileBase::read_int(), mrpt::config::CConfigFileBase::read_string(), mrpt::nav::RRTAlgorithmParams::robot_shape, mrpt::nav::RRTAlgorithmParams::robot_shape_circular_radius, mrpt::math::CMatrixDynamic< T >::rows(), and THROW_EXCEPTION_FMT.

Referenced by mrpt::nav::PlannerRRT_SE2_TPS::loadConfig().

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

◆ renderMoveTree()

template<typename node_pose_t , typename world_limits_t , typename tree_t >
void mrpt::nav::PlannerTPS_VirtualBase::renderMoveTree ( mrpt::opengl::COpenGLScene scene,
const TPlannerInputTempl< node_pose_t, world_limits_t > &  pi,
const TPlannerResultTempl< tree_t > &  result,
const TRenderPlannedPathOptions options 
)

Definition at line 23 of file impl_renderMoveTree.h.

References ASSERT_, ASSERT_ABOVE_, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_goal, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_ground_xy_grid, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_last_edge, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_local_obstacles, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_normal_edge, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_obstacles, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_optimal_edge, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_start, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::color_vehicle, mrpt::opengl::stock_objects::CornerXYZ(), mrpt::opengl::stock_objects::CornerXYZSimple(), mrpt::opengl::CGridPlaneXY::Create(), mrpt::opengl::CSetOfLines::Create(), mrpt::opengl::CText3D::Create(), mrpt::opengl::CPointCloud::Create(), mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::draw_obstacles, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::draw_shape_decimation, mrpt::nav::TPlannerInputTempl< node_pose_t, world_limits_t >::goal_pose, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::ground_xy_grid_frequency, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::highlight_last_added_edge, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::highlight_path_to_node_id, mrpt::opengl::COpenGLScene::insert(), INVALID_NODEID, mrpt::keep_max(), mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::local_obs_from_nearest_pose, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::log_msg, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::log_msg_position, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::log_msg_scale, M_PI, m_PTGs, mrpt::nav::TPlannerResultTempl< tree_t >::move_tree, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::new_state, mrpt::nav::TPlannerInputTempl< node_pose_t, world_limits_t >::obstacles_points, params, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::point_size_local_obstacles, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::point_size_obstacles, R, mrpt::nav::CParameterizedTrajectoryGenerator::renderPathAsSimpleLine(), mrpt::nav::RRTAlgorithmParams::robot_shape, mrpt::nav::RRTAlgorithmParams::robot_shape_circular_radius, mrpt::nav::TPlannerInputTempl< node_pose_t, world_limits_t >::start_pose, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::vehicle_line_width, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::vehicle_shape_z, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::width_last_edge, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::width_normal_edge, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::width_optimal_edge, mrpt::nav::TPlannerInputTempl< node_pose_t, world_limits_t >::world_bbox_max, mrpt::nav::TPlannerInputTempl< node_pose_t, world_limits_t >::world_bbox_min, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::x_nearest_pose, mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::x_rand_pose, and mrpt::nav::PlannerTPS_VirtualBase::TRenderPlannedPathOptions::xyzcorners_scale.

Here is the call graph for this function:

◆ spaceTransformer()

void PlannerTPS_VirtualBase::spaceTransformer ( const mrpt::maps::CSimplePointsMap in_obstacles,
const mrpt::nav::CParameterizedTrajectoryGenerator in_PTG,
const double  MAX_DIST,
std::vector< double > &  out_TPObstacles 
)
protected

Definition at line 171 of file PlannerRRT_common.cpp.

References mrpt::format(), mrpt::maps::CPointsMap::getPointsBuffer(), mrpt::nav::CParameterizedTrajectoryGenerator::initTPObstacles(), and mrpt::nav::CParameterizedTrajectoryGenerator::updateTPObstacle().

Here is the call graph for this function:

◆ spaceTransformerOneDirectionOnly()

void PlannerTPS_VirtualBase::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 
)
protected

Definition at line 221 of file PlannerRRT_common.cpp.

References mrpt::format(), mrpt::maps::CPointsMap::getPointsBuffer(), mrpt::nav::CParameterizedTrajectoryGenerator::initTPObstacleSingle(), and mrpt::nav::CParameterizedTrajectoryGenerator::updateTPObstacleSingle().

Here is the call graph for this function:

◆ transformPointcloudWithSquareClipping()

void PlannerTPS_VirtualBase::transformPointcloudWithSquareClipping ( const mrpt::maps::CPointsMap in_map,
mrpt::maps::CPointsMap out_map,
const mrpt::poses::CPose2D asSeenFrom,
const double  MAX_DIST_XY 
)
staticprotected

Member Data Documentation

◆ end_criteria

RRTEndCriteria mrpt::nav::PlannerTPS_VirtualBase::end_criteria

Definition at line 134 of file PlannerRRT_common.h.

◆ m_initialized_PTG

bool mrpt::nav::PlannerTPS_VirtualBase::m_initialized_PTG {false}
protected

Definition at line 229 of file PlannerRRT_common.h.

Referenced by internal_initialize_PTG().

◆ m_local_obs

mrpt::maps::CSimplePointsMap mrpt::nav::PlannerTPS_VirtualBase::m_local_obs
protected

Definition at line 231 of file PlannerRRT_common.h.

◆ m_PTGs

mrpt::nav::TListPTGPtr mrpt::nav::PlannerTPS_VirtualBase::m_PTGs
protected

◆ m_timelogger

mrpt::system::CTimeLogger mrpt::nav::PlannerTPS_VirtualBase::m_timelogger
protected

Definition at line 228 of file PlannerRRT_common.h.

Referenced by getProfiler(), and internal_initialize_PTG().

◆ params

RRTAlgorithmParams mrpt::nav::PlannerTPS_VirtualBase::params

Parameters specific to this path solver algorithm.

Definition at line 136 of file PlannerRRT_common.h.

Referenced by internal_initialize_PTG(), internal_loadConfig_PTG(), and renderMoveTree().




Page generated by Doxygen 1.8.14 for MRPT 2.0.4 Git: 33de1d0ad Sat Jun 20 11:02:42 2020 +0200 at sáb jun 20 17:35:17 CEST 2020