ROS_INFO("transform from parent to child x: %f",transform.transform.translation.x); ROS_INFO("transform from parent to child y: %f",transform.transform.translation.y); ROS_INFO("transform from parent to child z: %f\n",transform.transform.translation.z);
ROS_INFO("point int parent, x: %f",point_out.point.x); ROS_INFO("point int parent, y: %f",point_out.point.y); ROS_INFO("point int parent, z: %f\n",point_out.point.z);
<librarypath="lib/libglobal_planner"> <classname="global_planner/GlobalPlanner"type="global_planner::GlobalPlanner"base_class_type="nav_core::BaseGlobalPlanner"> <description> A implementation of a grid based planner using Dijkstras or A* </description> </class> </library>
A*比Dijkstra少计算很多,但可能不会产生相同路径。另外,在global_planner的A*里,the potentials are computed using 4-connected grid squares, while the path found by tracing the potential gradient from the goal back to the start uses the same grid in an 8-connected fashion. Thus, the actual path found may not be fully optimal in an 8-connected sense. (Also, no visited-state set is tracked while computing potentials, as in a more typical A* implementation, because such is unnecessary for 4-connected grids).
laser_scan_matcher: an incremental laser scan matcher, using Andrea Censi’s Canonical Scan Matcher implementation. It downloads and installs Andrea Censi’s Canonical Scan Matcher [1] locally.
scan_to_cloud_converter: converts LaserScan to PointCloud messages.