Main Content


Plot vehicle costmap


The plot function displays a vehicle costmap. The darkness of each cell is proportional to the cost value of the cell. Cells with low cost are bright, and cells containing obstacles with high cost are dark. Inflated areas are displayed with a red hue, and cells outside the inflated area are displayed in grayscale.


plot(costmap) plots the vehicle costmap in the current axes.

plot(costmap,Name,Value) plots the vehicle costmap using name-value pair arguments to specify the parent axes or to adjust the display of inflated areas.


collapse all

Load a costmap from a parking lot. Display the costmap.

data = load('parkingLotCostmap.mat');
parkMap = data.parkingLotCostmap;

Create a template polyshape object with the dimensions of the car.

carDims = parkMap.CollisionChecker.VehicleDimensions
carDims = 
  vehicleDimensions with properties:

           Length: 4.7000
            Width: 1.8000
           Height: 1.4000
        Wheelbase: 2.8000
     RearOverhang: 1
    FrontOverhang: 0.9000
       WorldUnits: 'meters'

ro = carDims.RearOverhang;
fo = carDims.FrontOverhang;
wb = carDims.Wheelbase;
hw = carDims.Width/2;
X = [-ro,wb+fo,wb+fo,-ro];
Y = [-hw,-hw,hw,hw];
templateShape = polyshape(X',Y');

Create a function handle to move the template to a specified vehicle pose. This move function translates the polyshape s to the coordinate (x,y) and then rotates the polyshape by an angle theta about the point (x,y).

move = @(s,x,y,theta) rotate(translate(s,[x,y]), ...

Move the car template to a pose.

carPose = [5,5,75];
carShape = move(templateShape,carPose(1),carPose(2),carPose(3));

Plot the car on the costmap.

hold on

Figure contains an axes. The axes contains 3 objects of type image, patch, polygon. This object represents Inflated Areas.

Input Arguments

collapse all

Costmap, specified as a vehicleCostmap object.

Name-Value Pair Arguments

Specify optional comma-separated pairs of Name,Value arguments. Name is the argument name and Value is the corresponding value. Name must appear inside quotes. You can specify several name and value pair arguments in any order as Name1,Value1,...,NameN,ValueN.

Example: 'Inflation','off'

Display inflated areas, specified as the comma-separated pair consisting of 'Inflation' and one of the following.

  • 'on'—Cells in the inflated area have a red hue.

  • 'off'—Cells containing obstacles have a red hue, but other cells in the inflated area are displayed in grayscale.

Axes on which to plot the costmap, specified as the comma-separated pair consisting of 'Parent' and an axes handle. By default, plot uses the current axes handle, which is returned by the gca function.

Introduced in R2018a