Class Smoother
Defined in File smoother.hpp
Class Documentation
A path smoother implementation.
Public Functions
A constructor for nav2_smac_planner::Smoother.
A destructor for nav2_smac_planner::Smoother.
Initialization of the smoother.
- Parameters:
min_turning_radius – Minimum turning radius (m)
motion_model – Motion model type
Smoother API method.
- Parameters:
path – Reference to path
costmap – Pointer to minimal costmap
max_time – Maximum time to compute, stop early if over limit
- Returns:
If smoothing was successful
Protected Functions
Smoother method - does the smoothing on a segment.
- Parameters:
path – Reference to path
reversing_segment – Return if this is a reversing segment
costmap – Pointer to minimal costmap
max_time – Maximum time to compute, stop early if over limit
- Returns:
If smoothing was successful
Get the field value for a given dimension.
- Parameters:
msg – Current pose to sample
dim – Dimension ID of interest
- Returns:
dim value
Set the field value for a given dimension.
- Parameters:
msg – Current pose to sample
dim – Dimension ID of interest
value – to set the dimention to for the pose
Finds the starting and end indices of path segments where the robot is traveling in the same direction (e.g. forward vs reverse)
- Parameters:
path – Path in which to look for cusps
- Returns:
Set of index pairs for each segment of the path in a given direction
Enforced minimum curvature boundary conditions on plan output the robot is traveling in the same direction (e.g. forward vs reverse)
- Parameters:
start_pose – Start pose of the feasible path to maintain
path – Path to modify for curvature constraints on start / end of path
costmap – Costmap to check for collisions
reversing_segment – Whether this path segment is in reverse
Enforced minimum curvature boundary conditions on plan output the robot is traveling in the same direction (e.g. forward vs reverse)
- Parameters:
end_pose – End pose of the feasible path to maintain
path – Path to modify for curvature constraints on start / end of path
costmap – Costmap to check for collisions
reversing_segment – Whether this path segment is in reverse
Given a set of boundary expansion, find the one which is shortest such that it is least likely to contain a loop-de-loop when working with close-by primitive markers. Instead, select a further away marker which generates a shorter `.
- Parameters:
boundary_expansions – Set of boundary expansions
- Returns:
Idx of the shorest boundary expansion option
Populate a motion model expansion from start->end into expansion.
- Parameters:
start – Start pose of the feasible path to maintain
end – End pose of the feasible path to maintain
expansion – Expansion object to populate
costmap – Costmap to check for collisions
reversing_segment – Whether this path segment is in reverse
Generates boundary expansions with end idx at least strategic distances away, using either Reverse or (Forward) Path Iterators.
- Parameters:
start – iterator to start search in path for
end – iterator to end search for
- Returns:
Boundary expansions with end idxs populated
For a given path, update the path point orientations based on smoothing.
- Parameters:
path – Path to approximate the path orientation in
reversing_segment – Return if this is a reversing segment
Protected Attributes