[][src]Struct gear::CollisionChecker

pub struct CollisionChecker<T> where
    T: RealField, 
{ pub prediction: T, pub self_collision_pairs: Vec<(String, String)>, // some fields omitted }

Collision checker for a robot

Fields

prediction: T

margin length for collision check

self_collision_pairs: Vec<(String, String)>

Implementations

impl<T> CollisionChecker<T> where
    T: RealField + SubsetOf<f64>, 
[src]

pub fn new(
    name_collision_model_map: HashMap<String, Vec<(ShapeHandle<T>, Isometry3<T>)>>,
    prediction: T
) -> Self
[src]

Create CollisionChecker from HashMap

pub fn from_urdf_robot(urdf_robot: &Robot, prediction: T) -> Self[src]

Create CollisionChecker from urdf_rs::Robot

pub fn from_urdf_robot_with_base_dir(
    urdf_robot: &Robot,
    base_dir: Option<&Path>,
    prediction: T
) -> Self
[src]

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<'_, '_, 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;
[src]

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<'_, T>

Notable traits for SelfCollisionPairs<'a, T>

impl<'a, T> Iterator for SelfCollisionPairs<'a, T> where
    T: RealField + SubsetOf<f64>, 
type Item = (String, String);
[src]

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

impl<T: Clone> Clone for CollisionChecker<T> where
    T: RealField, 
[src]

Auto Trait Implementations

impl<T> !RefUnwindSafe for CollisionChecker<T>[src]

impl<T> Send for CollisionChecker<T> where
    T: Scalar
[src]

impl<T> Sync for CollisionChecker<T> where
    T: Scalar
[src]

impl<T> Unpin for CollisionChecker<T> where
    T: Scalar + Unpin
[src]

impl<T> !UnwindSafe for CollisionChecker<T>[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Downcast for T where
    T: Any

impl<T> DowncastSync for T where
    T: Send + Sync + Any

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,