pub struct IDAStarPlanner { /* private fields */ }Expand description
IDA* planner on an 8-connected occupancy grid.
Implementations§
Source§impl IDAStarPlanner
impl IDAStarPlanner
Sourcepub fn new(ox: &[f64], oy: &[f64], config: IDAStarConfig) -> Self
pub fn new(ox: &[f64], oy: &[f64], config: IDAStarConfig) -> Self
Create a new planner from obstacle x/y vectors.
Sourcepub fn try_new(
ox: &[f64],
oy: &[f64],
config: IDAStarConfig,
) -> RoboticsResult<Self>
pub fn try_new( ox: &[f64], oy: &[f64], config: IDAStarConfig, ) -> RoboticsResult<Self>
Create a validated planner from obstacle x/y vectors.
Sourcepub fn from_obstacles(
ox: &[f64],
oy: &[f64],
resolution: f64,
robot_radius: f64,
) -> Self
pub fn from_obstacles( ox: &[f64], oy: &[f64], resolution: f64, robot_radius: f64, ) -> Self
Create from obstacle x/y vectors with explicit scalar parameters.
Sourcepub fn from_obstacle_points(
obstacles: &Obstacles,
config: IDAStarConfig,
) -> RoboticsResult<Self>
pub fn from_obstacle_points( obstacles: &Obstacles, config: IDAStarConfig, ) -> RoboticsResult<Self>
Create from typed obstacle points.
Sourcepub fn plan(&self, start: Point2D, goal: Point2D) -> RoboticsResult<Path2D>
pub fn plan(&self, start: Point2D, goal: Point2D) -> RoboticsResult<Path2D>
Plan without importing the trait explicitly.
Sourcepub fn plan_xy(
&self,
sx: f64,
sy: f64,
gx: f64,
gy: f64,
) -> RoboticsResult<Path2D>
pub fn plan_xy( &self, sx: f64, sy: f64, gx: f64, gy: f64, ) -> RoboticsResult<Path2D>
Plan from raw coordinates without importing the trait explicitly.
Sourcepub fn plan_with_stats(
&self,
start: Point2D,
goal: Point2D,
) -> RoboticsResult<(Path2D, IDAStarSearchStats)>
pub fn plan_with_stats( &self, start: Point2D, goal: Point2D, ) -> RoboticsResult<(Path2D, IDAStarSearchStats)>
Plan a path and return per-query search-effort statistics.
Sourcepub fn plan_with_report(
&self,
start: Point2D,
goal: Point2D,
) -> RoboticsResult<IDAStarPlanReport>
pub fn plan_with_report( &self, start: Point2D, goal: Point2D, ) -> RoboticsResult<IDAStarPlanReport>
Plan a path and return the query outcome plus search-effort diagnostics, even when the bounded search stops before reaching an exact path.
Sourcepub fn planning(
&self,
sx: f64,
sy: f64,
gx: f64,
gy: f64,
) -> Option<(Vec<f64>, Vec<f64>)>
👎Deprecated: use plan() or plan_xy() instead
pub fn planning( &self, sx: f64, sy: f64, gx: f64, gy: f64, ) -> Option<(Vec<f64>, Vec<f64>)>
use plan() or plan_xy() instead
Plan a path returning (rx, ry) vectors.
pub fn grid_map(&self) -> &GridMap
Trait Implementations§
Source§impl Debug for IDAStarPlanner
impl Debug for IDAStarPlanner
Auto Trait Implementations§
impl Freeze for IDAStarPlanner
impl RefUnwindSafe for IDAStarPlanner
impl Send for IDAStarPlanner
impl Sync for IDAStarPlanner
impl Unpin for IDAStarPlanner
impl UnsafeUnpin for IDAStarPlanner
impl UnwindSafe for IDAStarPlanner
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.