[−][src]Struct nphysics3d::joint::RevoluteConstraint
A constraint that removes all relative motions except one rotation between two body parts.
Methods
impl<N: RealField, Handle: BodyHandle> RevoluteConstraint<N, Handle>
[src]
pub fn new(
b1: BodyPartHandle<Handle>,
b2: BodyPartHandle<Handle>,
anchor1: Point<N>,
axis1: Unit<AngularVector<N>>,
anchor2: Point<N>,
axis2: Unit<AngularVector<N>>
) -> Self
[src]
b1: BodyPartHandle<Handle>,
b2: BodyPartHandle<Handle>,
anchor1: Point<N>,
axis1: Unit<AngularVector<N>>,
anchor2: Point<N>,
axis2: Unit<AngularVector<N>>
) -> Self
Create a new revolute constraint which ensures the provided axii and anchors always coincide.
All axii and achors are expressed in the local coordinate system of the corresponding body parts.
Trait Implementations
impl<N: RealField, Handle: BodyHandle, Bodies: BodySet<N, Handle = Handle>> JointConstraint<N, Bodies> for RevoluteConstraint<N, Handle>
[src]
fn num_velocity_constraints(&self) -> usize
[src]
fn anchors(&self) -> (BodyPartHandle<Handle>, BodyPartHandle<Handle>)
[src]
fn velocity_constraints(
&mut self,
_: &IntegrationParameters<N>,
bodies: &Bodies,
ext_vels: &DVector<N>,
ground_j_id: &mut usize,
j_id: &mut usize,
jacobians: &mut [N],
constraints: &mut LinearConstraints<N, usize>
)
[src]
&mut self,
_: &IntegrationParameters<N>,
bodies: &Bodies,
ext_vels: &DVector<N>,
ground_j_id: &mut usize,
j_id: &mut usize,
jacobians: &mut [N],
constraints: &mut LinearConstraints<N, usize>
)
fn cache_impulses(&mut self, constraints: &LinearConstraints<N, usize>)
[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 RevoluteConstraint<N, Handle>
[src]
fn num_position_constraints(&self, bodies: &Bodies) -> usize
[src]
fn position_constraint(
&self,
parameters: &IntegrationParameters<N>,
i: usize,
bodies: &mut Bodies,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N, Handle>>
[src]
&self,
parameters: &IntegrationParameters<N>,
i: usize,
bodies: &mut Bodies,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N, Handle>>
Auto Trait Implementations
impl<N, Handle> Send for RevoluteConstraint<N, Handle> where
N: Scalar,
N: Scalar,
impl<N, Handle> Unpin for RevoluteConstraint<N, Handle> where
Handle: Unpin,
N: Scalar + Unpin,
Handle: Unpin,
N: Scalar + Unpin,
impl<N, Handle> Sync for RevoluteConstraint<N, Handle> where
N: Scalar,
N: Scalar,
impl<N, Handle> UnwindSafe for RevoluteConstraint<N, Handle> where
Handle: UnwindSafe,
N: Scalar + UnwindSafe,
Handle: UnwindSafe,
N: Scalar + UnwindSafe,
impl<N, Handle> RefUnwindSafe for RevoluteConstraint<N, Handle> where
Handle: RefUnwindSafe,
N: RefUnwindSafe + Scalar,
Handle: RefUnwindSafe,
N: RefUnwindSafe + Scalar,
Blanket Implementations
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
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<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> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Downcast for T where
T: Any,
[src]
T: Any,
fn into_any(self: Box<T>) -> Box<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> 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>,