pub struct InformedRRTStar {
pub start: Node,
pub goal: Node,
pub min_rand: f64,
pub max_rand: f64,
pub expand_dis: f64,
pub goal_sample_rate: i32,
pub max_iter: usize,
pub obstacle_list: Vec<(f64, f64, f64)>,
pub node_list: Vec<Node>,
}Fields§
§start: Node§goal: Node§min_rand: f64§max_rand: f64§expand_dis: f64§goal_sample_rate: i32§max_iter: usize§obstacle_list: Vec<(f64, f64, f64)>§node_list: Vec<Node>Implementations§
Source§impl InformedRRTStar
impl InformedRRTStar
pub fn new( start: (f64, f64), goal: (f64, f64), obstacle_list: Vec<(f64, f64, f64)>, rand_area: (f64, f64), expand_dis: f64, goal_sample_rate: i32, max_iter: usize, ) -> Self
pub fn planning(&mut self) -> Option<Vec<[f64; 2]>>
Sourcepub fn plan_from(
&mut self,
start: Point2D,
goal: Point2D,
) -> RoboticsResult<Path2D>
pub fn plan_from( &mut self, start: Point2D, goal: Point2D, ) -> RoboticsResult<Path2D>
Plan a path from the given start to goal, returning a [Path2D].
This is a convenience wrapper around planning() that accepts
[Point2D], sets the start/goal, runs the planner, and returns [Path2D].
Requires &mut self because the underlying algorithm mutates internal state.
Sourcepub fn get_obstacles(&self) -> &[(f64, f64, f64)]
pub fn get_obstacles(&self) -> &[(f64, f64, f64)]
Get the obstacle list
Auto Trait Implementations§
impl Freeze for InformedRRTStar
impl RefUnwindSafe for InformedRRTStar
impl Send for InformedRRTStar
impl Sync for InformedRRTStar
impl Unpin for InformedRRTStar
impl UnsafeUnpin for InformedRRTStar
impl UnwindSafe for InformedRRTStar
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.