[−][src]Struct nphysics3d::solver::NonlinearUnilateralConstraint
A non-linear position-based non-penetration constraint.
Fields
r: N
The scaling parameter of the SOR-prox method.
rhs: N
The target position change this constraint must apply.
ndofs1: usize
Number of degree of freedom of the first body.
body1: BodyPartHandle<Handle>
The first body affected by the constraint.
collider1: CollHandle
The first collider affected by the constraint.
ndofs2: usize
Number of degree of freedom of the second body.
body2: BodyPartHandle<Handle>
The second body affected by the constraint.
collider2: CollHandle
The second collider affected by the constraint.
kinematic: ContactKinematic<N>
The kinematic information used to update the contact location.
normal1: Unit<Vector<N>>
The contact normal on the local space of self.body1
.
normal2: Unit<Vector<N>>
The contact normal on the local space of self.body2
.
Implementations
impl<N: RealField, Handle: BodyHandle, CollHandle: ColliderHandle> NonlinearUnilateralConstraint<N, Handle, CollHandle>
[src]
pub fn new(
body1: BodyPartHandle<Handle>,
collider1: CollHandle,
ndofs1: usize,
body2: BodyPartHandle<Handle>,
collider2: CollHandle,
ndofs2: usize,
normal1: Unit<Vector<N>>,
normal2: Unit<Vector<N>>,
kinematic: ContactKinematic<N>
) -> Self
[src]
body1: BodyPartHandle<Handle>,
collider1: CollHandle,
ndofs1: usize,
body2: BodyPartHandle<Handle>,
collider2: CollHandle,
ndofs2: usize,
normal1: Unit<Vector<N>>,
normal2: Unit<Vector<N>>,
kinematic: ContactKinematic<N>
) -> Self
Create a new nonlinear position-based non-penetration constraint.
Trait Implementations
impl<N: Debug + RealField, Handle: Debug + BodyHandle, CollHandle: Debug + ColliderHandle> Debug for NonlinearUnilateralConstraint<N, Handle, CollHandle>
[src]
Auto Trait Implementations
impl<N, Handle, CollHandle> RefUnwindSafe for NonlinearUnilateralConstraint<N, Handle, CollHandle> where
CollHandle: RefUnwindSafe,
Handle: RefUnwindSafe,
N: RefUnwindSafe + Scalar,
CollHandle: RefUnwindSafe,
Handle: RefUnwindSafe,
N: RefUnwindSafe + Scalar,
impl<N, Handle, CollHandle> Send for NonlinearUnilateralConstraint<N, Handle, CollHandle> where
N: Scalar,
N: Scalar,
impl<N, Handle, CollHandle> Sync for NonlinearUnilateralConstraint<N, Handle, CollHandle> where
N: Scalar,
N: Scalar,
impl<N, Handle, CollHandle> Unpin for NonlinearUnilateralConstraint<N, Handle, CollHandle> where
CollHandle: Unpin,
Handle: Unpin,
N: Scalar + Unpin,
CollHandle: Unpin,
Handle: Unpin,
N: Scalar + Unpin,
impl<N, Handle, CollHandle> UnwindSafe for NonlinearUnilateralConstraint<N, Handle, CollHandle> where
CollHandle: UnwindSafe,
Handle: UnwindSafe,
N: Scalar + UnwindSafe,
CollHandle: UnwindSafe,
Handle: UnwindSafe,
N: Scalar + UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Downcast for T where
T: Any,
[src]
T: Any,
fn into_any(self: Box<T>) -> Box<dyn Any + 'static>
[src]
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
[src]
fn as_any(&self) -> &(dyn Any + 'static)
[src]
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
[src]
impl<T> DowncastSync for T where
T: Send + Sync + Any,
[src]
T: Send + Sync + Any,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
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]
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
[src]
fn is_in_subset(&self) -> bool
[src]
fn to_subset_unchecked(&self) -> SS
[src]
fn from_subset(element: &SS) -> SP
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,