show
Visualize the planned path
Description
Examples
Obstacle-Free Path Planning Using Hybrid A Star
Plan a collision-free path for a vehicle through a parking lot by using the Hybrid A* algorithm.
Create and Assign Map to State Validator
Load the cost values of cells in the vehicle costmap of a parking lot.
load parkingLotCostVal.mat % costVal
Create a binaryOccupancyMap
with cost values.
resolution = 3; map = binaryOccupancyMap(costVal,resolution);
Create a state space.
ss = stateSpaceSE2;
Update state space bounds to be the same as map limits.
ss.StateBounds = [map.XWorldLimits;map.YWorldLimits;[-pi pi]];
Create a state validator object for collision checking.
sv = validatorOccupancyMap(ss);
Assign the map to the state validator object.
sv.Map = map;
Plan and Visualize Path
Initialize the plannerHybridAStar
object with the state validator object. Specify the MinTurningRadius
and MotionPrimitiveLength
properties of the planner.
planner = plannerHybridAStar(sv, ... MinTurningRadius=4, ... MotionPrimitiveLength=6);
Define start and goal poses for the vehicle as [x, y, theta] vectors. x and y specify the position in meters, and theta specifies the orientation angle in radians.
startPose = [4 9 pi/2]; % [meters, meters, radians]
goalPose = [30 19 -pi/2];
Plan a path from the start pose to the goal pose.
refpath = plan(planner,startPose,goalPose,SearchMode='exhaustive');
Visualize the path using show function.
show(planner)
Input Arguments
planner
— Hybrid A* path planner
plannerHybridAStar
object
Hybrid A* path planner, specified as a plannerHybridAStar
object.
Name-Value Arguments
Specify optional pairs of arguments as
Name1=Value1,...,NameN=ValueN
, where Name
is
the argument name and Value
is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Before R2021a, use commas to separate each name and value, and enclose
Name
in quotes.
Example: 'Positions','none'
Tree
— Display expansion tree
'on'
(default) | 'off'
Display expansion tree option, specified as the comma-separated pair consisting of
'Tree'
and either 'on'
or
'off'
.
Example: show(planner,'Tree','off')
Data Types: string
Path
— Display planned path
'on'
(default) | 'off'
Display planned path option, specified as the comma-separated pair consisting of
'Path'
and either 'on'
or
'off'
.
Example: show(planner,'Path','off')
Data Types: string
Positions
— Display start and goal points
'both'
(default) | 'start'
| 'goal'
| 'none'
Display the start and goal points, specified as the comma-separated pair
consisting of 'Positions'
and one of the following:
'start'
— Display the start point.'goal'
— Display the goal point.'both'
— Display the start and goal points.'none'
— Do not display any points.
Example: show(planner,'Positions','start')
Data Types: string
HeadingLength
— Length of heading
0.4*InterpolationDistance
(default) | positive numeric scalar
Length of heading, specified as positive numeric scalar. No poses will be visualized when this value is set to 0.
Data Types: single
| double
Output Arguments
Version History
Introduced in R2019b
See Also
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)