This PR changes the nav_core2 interfaces and makes the changes to other packages needed to comply with the interface changes.
nav_core2 changes
The primary change is creating nav_core2::Costmap and using it in place of costmap_2d::Costmap2DROS in the interfaces.
The interfaces are also changed to include ros::NodeHandles in the initialization in order to control which callback queues planners/costmaps run in.
The LocalPlanner interface no longer relies on using the last pose of the global plan as the goal. Instead there is a new explicit setGoalPose method.
This PR also introduces a Bounds library for tracking rectangular bounds and a BasicCostmap class for implementing, well, a basic Costmap.
other changes
nav_core_adapter now uses the new interfaces, and has a CostmapAdapter for using a Costmap2DROS as a nav_core2::Costmap
The CostmapQueue class is updated.
nav_2d_utils/nav_2d_msgs now include data structures and functions for operating on polygons/robot footprints (since we no longer rely on costmap_2d for those functions.
dwb_local_planner and its plugins are updated with the new interface.
This PR changes the nav_core2 interfaces and makes the changes to other packages needed to comply with the interface changes.
nav_core2 changes
The primary change is creating
nav_core2::Costmap
and using it in place ofcostmap_2d::Costmap2DROS
in the interfaces.The interfaces are also changed to include
ros::NodeHandle
s in the initialization in order to control which callback queues planners/costmaps run in.The
LocalPlanner
interface no longer relies on using the last pose of the global plan as the goal. Instead there is a new explicitsetGoalPose
method.This PR also introduces a
Bounds
library for tracking rectangular bounds and aBasicCostmap
class for implementing, well, a basic Costmap.other changes
nav_core_adapter
now uses the new interfaces, and has aCostmapAdapter
for using aCostmap2DROS
as anav_core2::Costmap
CostmapQueue
class is updated.nav_2d_utils/nav_2d_msgs
now include data structures and functions for operating on polygons/robot footprints (since we no longer rely oncostmap_2d
for those functions.dwb_local_planner
and its plugins are updated with the new interface.