简介
global_planner负责全局规划,主要利用了A算法和Dijkstra算法。提供了makeplan接口做全局规划。可以发布geometry_msgs::PoseStamped类型的信息。
具体规划时,先将起点终点转换到map下的index单位,然后调用A等图搜索算法,然后将以index为单位的path在转换到global_frames下的plan,然后传递到movebase中。
============================================================
定义接口规范的类
Expander类:
作为核心全局规划算法的基类,定义了例如A*、Dijstras算法应该有的接口:calculatePotentials:计算Potentials,potential是一个nx * ny大小的数组(大小和costmap一致),其中的元素代表从起点走至该点的花费。
Traceback类
规定了getpath接口,根据建立的potential,从目标点回溯