[][src]Struct nphysics3d::joint::PinSlotConstraint

pub struct PinSlotConstraint<N: RealField, Handle: BodyHandle> { /* fields omitted */ }

A constraint that removes two translational and two rotational degrees of freedoms.

This is different frmo the cylindrical constraint since the remaining rotation and translation are not restricted to be done wrt. the same axis.

Methods

impl<N: RealField, Handle: BodyHandle> PinSlotConstraint<N, Handle>[src]

pub fn new(
    b1: BodyPartHandle<Handle>,
    b2: BodyPartHandle<Handle>,
    anchor1: Point<N>,
    axis_v1: Unit<Vector<N>>,
    axis_w1: Unit<Vector<N>>,
    anchor2: Point<N>,
    axis_w2: Unit<Vector<N>>
) -> Self
[src]

Creates a new pin-slot constraint.

This will ensure the relative linear motions are always along axis_v1 (here expressed in the local coordinate frame of b1), and that axis_w1 and axis_w2 always coincide. All axises and anchors are expressed in the local coordinate frame of their respective body part.

Trait Implementations

impl<N: RealField, Handle: BodyHandle, Bodies: BodySet<N, Handle = Handle>> JointConstraint<N, Bodies> for PinSlotConstraint<N, Handle>[src]

fn is_active(&self, bodies: &Bodies) -> bool[src]

Return true if the constraint is active. Read more

impl<N: RealField, Handle: BodyHandle, Bodies: BodySet<N, Handle = Handle>> NonlinearConstraintGenerator<N, Bodies> for PinSlotConstraint<N, Handle>[src]

Auto Trait Implementations

impl<N, Handle> Unpin for PinSlotConstraint<N, Handle> where
    Handle: Unpin,
    N: Scalar + Unpin

impl<N, Handle> Sync for PinSlotConstraint<N, Handle> where
    N: Scalar

impl<N, Handle> Send for PinSlotConstraint<N, Handle> where
    N: Scalar

impl<N, Handle> UnwindSafe for PinSlotConstraint<N, Handle> where
    Handle: UnwindSafe,
    N: Scalar + UnwindSafe

impl<N, Handle> RefUnwindSafe for PinSlotConstraint<N, Handle> where
    Handle: RefUnwindSafe,
    N: RefUnwindSafe + Scalar

Blanket Implementations

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

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

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<T> Borrow<T> for T where
    T: ?Sized
[src]

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

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

impl<T> Downcast for T where
    T: Any
[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>, 
[src]