Struct nphysics2d::solver::NonlinearUnilateralConstraint [−][src]
pub struct NonlinearUnilateralConstraint<N: Real> { pub r: N, pub rhs: N, pub ndofs1: usize, pub body1: BodyHandle, pub ndofs2: usize, pub body2: BodyHandle, pub kinematic: ContactKinematic<N>, pub normal1: Unit<Vector<N>>, pub normal2: Unit<Vector<N>>, }
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: BodyHandle
The first body affected by the constraint.
ndofs2: usize
Number of degree of freedom of the second body.
body2: BodyHandle
The second body 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.body1
.
Methods
impl<N: Real> NonlinearUnilateralConstraint<N>
[src]
impl<N: Real> NonlinearUnilateralConstraint<N>
pub fn new(
body1: BodyHandle,
ndofs1: usize,
body2: BodyHandle,
ndofs2: usize,
normal1: Unit<Vector<N>>,
normal2: Unit<Vector<N>>,
kinematic: ContactKinematic<N>
) -> Self
[src]
pub fn new(
body1: BodyHandle,
ndofs1: usize,
body2: BodyHandle,
ndofs2: usize,
normal1: Unit<Vector<N>>,
normal2: Unit<Vector<N>>,
kinematic: ContactKinematic<N>
) -> Self
Create a new nonlinear position-based non-penetration constraint.
Auto Trait Implementations
impl<N> Send for NonlinearUnilateralConstraint<N> where
N: Scalar,
impl<N> Send for NonlinearUnilateralConstraint<N> where
N: Scalar,
impl<N> Sync for NonlinearUnilateralConstraint<N> where
N: Scalar,
impl<N> Sync for NonlinearUnilateralConstraint<N> where
N: Scalar,