Grow obstacles in grid maps

The mapcspace driver reads a occupancy grid map from another interface_map device and convolves it with a robot of a particular shape and size to create the configuration space (C-space) map. That is, this driver "grows" obstacles in the map to produce a new map in which, for path-planning purposes, you can consider the robot to be a point.

Both occupied and unknown cells are grown.

Note that interface_map devices produce no data; the map is delivered via a sequence of configuration requests.

Compile-time dependencies
  • none
Provides
  • interface_map : the resulting C-space map
Requires
  • interface_map : the raw map, from which to make the C-space map
Configuration requests
  • PLAYER_MAP_REQ_GET_INFO
  • PLAYER_MAP_REQ_GET_DATA
Configuration file options
  • robot_radius (length)
    • Default: -1.0
    • The radius of the robot to convolve with the map
  • robot_shape (string)
    • Default: "circle"
    • The shape of the robot to convolve with the map. Should be one of: "circle".
Example
driver
(
  name "mapfile"
  provides ["map:0"]
  filename "mymap.pgm"
  resolution 0.1  # 10cm per pixel
)
driver
(
  name "mapcspace"
  requires ["map:0"]  # read from map:0
  provides ["map:1"]  # output C-space map on map:1
  robot_shape "circle"
  robot_radius 0.5 m
)
Author
Brian Gerkey