Struct openrr_planner::collision::CollisionChecker [−][src]
pub struct CollisionChecker<T> where
T: RealField, { pub prediction: T, pub self_collision_pairs: Vec<(String, String)>, // some fields omitted }
Expand description
Collision checker for a robot
Fields
prediction: T
margin length for collision check
self_collision_pairs: Vec<(String, String)>
Implementations
Create CollisionChecker from HashMap
Create CollisionChecker from urdf_rs::Robot
pub fn from_urdf_robot_with_base_dir(
urdf_robot: &Robot,
base_dir: Option<&Path>,
prediction: T
) -> Self
pub fn from_urdf_robot_with_base_dir(
urdf_robot: &Robot,
base_dir: Option<&Path>,
prediction: T
) -> Self
Create CollisionChecker from urdf_rs::Robot with base_dir support
base_dir: mesh files are loaded from this dir if the path does not start with “package://”
pub fn check_env<'a>(
&'a self,
robot: &'a Chain<T>,
target_shape: &'a dyn Shape<T>,
target_pose: &'a Isometry3<T>
) -> EnvCollisionNames<'a, 'a, T>ⓘNotable traits for EnvCollisionNames<'a, 'b, T>
impl<'a, 'b, T> Iterator for EnvCollisionNames<'a, 'b, T> where
T: RealField + SubsetOf<f64>, type Item = String;
pub fn check_env<'a>(
&'a self,
robot: &'a Chain<T>,
target_shape: &'a dyn Shape<T>,
target_pose: &'a Isometry3<T>
) -> EnvCollisionNames<'a, 'a, T>ⓘNotable traits for EnvCollisionNames<'a, 'b, T>
impl<'a, 'b, T> Iterator for EnvCollisionNames<'a, 'b, T> where
T: RealField + SubsetOf<f64>, type Item = String;
Check collision between environmental object and returns the names of the link(joint) names
robot: robot model target_shape: Check collision with this shape and the robot target_pose: Check collision with this shape in this pose and the robot
pub fn check_self<'a>(
&'a self,
collision_check_robot: &'a Chain<T>,
self_collision_pairs: &'a [(String, String)]
) -> SelfCollisionPairs<'a, T>ⓘNotable traits for SelfCollisionPairs<'a, T>
impl<'a, T> Iterator for SelfCollisionPairs<'a, T> where
T: RealField + SubsetOf<f64>, type Item = (String, String);
pub fn check_self<'a>(
&'a self,
collision_check_robot: &'a Chain<T>,
self_collision_pairs: &'a [(String, String)]
) -> SelfCollisionPairs<'a, T>ⓘNotable traits for SelfCollisionPairs<'a, T>
impl<'a, T> Iterator for SelfCollisionPairs<'a, T> where
T: RealField + SubsetOf<f64>, type Item = (String, String);
Check self collision and return the names of the link(joint) names
robot: robot model self_collision_pairs: pairs of the names of the link(joint)
Trait Implementations
Auto Trait Implementations
impl<T> !RefUnwindSafe for CollisionChecker<T>
impl<T> Send for CollisionChecker<T>
impl<T> Sync for CollisionChecker<T>
impl<T> Unpin for CollisionChecker<T> where
T: Unpin,
impl<T> !UnwindSafe for CollisionChecker<T>
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
pub fn is_in_subset(&self) -> bool
pub fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
pub fn to_subset_unchecked(&self) -> SS
pub fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
pub fn from_subset(element: &SS) -> SP
pub fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.
pub fn vzip(self) -> V