[−][src]Struct nphysics3d::joint::CylindricalConstraint
A constraint that removes all degrees of freedom (of one body part relative to a second one) except one translation along an axis and one rotation along the same axis.
Implementations
impl<N: RealField, Handle: BodyHandle> CylindricalConstraint<N, Handle>
[src]
pub fn new(
b1: BodyPartHandle<Handle>,
b2: BodyPartHandle<Handle>,
anchor1: Point<N>,
axis1: Unit<Vector<N>>,
anchor2: Point<N>,
axis2: Unit<Vector<N>>
) -> Self
[src]
b1: BodyPartHandle<Handle>,
b2: BodyPartHandle<Handle>,
anchor1: Point<N>,
axis1: Unit<Vector<N>>,
anchor2: Point<N>,
axis2: Unit<Vector<N>>
) -> Self
Creates a cartesian constraint between two body parts.
This will ensure axis1
and axis2
always coincide. All the axis and anchors
are provided on the local space of the corresponding body parts.
pub fn set_break_force(&mut self, break_force: N)
[src]
The maximum force this joint can absorb before breaking.
pub fn set_break_torque(&mut self, break_torque: N)
[src]
The maximum torque this joint can absorb before breaking.
Trait Implementations
impl<N: RealField, Handle: BodyHandle> JointConstraint<N, Handle> for CylindricalConstraint<N, Handle>
[src]
pub fn is_broken(&self) -> bool
[src]
pub fn num_velocity_constraints(&self) -> usize
[src]
pub fn anchors(&self) -> (BodyPartHandle<Handle>, BodyPartHandle<Handle>)
[src]
pub fn velocity_constraints(
&mut self,
_: &IntegrationParameters<N>,
bodies: &dyn BodySet<N, Handle = Handle>,
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: &dyn BodySet<N, Handle = Handle>,
ext_vels: &DVector<N>,
ground_j_id: &mut usize,
j_id: &mut usize,
jacobians: &mut [N],
constraints: &mut LinearConstraints<N, usize>
)
pub fn cache_impulses(
&mut self,
constraints: &LinearConstraints<N, usize>,
inv_dt: N
)
[src]
&mut self,
constraints: &LinearConstraints<N, usize>,
inv_dt: N
)
pub fn is_active(&self, bodies: &dyn BodySet<N, Handle = Handle>) -> bool
[src]
impl<N: RealField, Handle: BodyHandle> NonlinearConstraintGenerator<N, Handle> for CylindricalConstraint<N, Handle>
[src]
pub fn num_position_constraints(
&self,
bodies: &dyn BodySet<N, Handle = Handle>
) -> usize
[src]
&self,
bodies: &dyn BodySet<N, Handle = Handle>
) -> usize
pub fn position_constraint(
&self,
parameters: &IntegrationParameters<N>,
i: usize,
bodies: &mut dyn BodySet<N, Handle = Handle>,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N, Handle>>
[src]
&self,
parameters: &IntegrationParameters<N>,
i: usize,
bodies: &mut dyn BodySet<N, Handle = Handle>,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N, Handle>>
Auto Trait Implementations
impl<N, Handle> RefUnwindSafe for CylindricalConstraint<N, Handle> where
Handle: RefUnwindSafe,
N: RefUnwindSafe + Scalar,
[src]
Handle: RefUnwindSafe,
N: RefUnwindSafe + Scalar,
impl<N, Handle> Send for CylindricalConstraint<N, Handle> where
N: Scalar,
[src]
N: Scalar,
impl<N, Handle> Sync for CylindricalConstraint<N, Handle> where
N: Scalar,
[src]
N: Scalar,
impl<N, Handle> Unpin for CylindricalConstraint<N, Handle> where
Handle: Unpin,
N: Scalar + Unpin,
[src]
Handle: Unpin,
N: Scalar + Unpin,
impl<N, Handle> UnwindSafe for CylindricalConstraint<N, Handle> where
Handle: UnwindSafe,
N: Scalar + UnwindSafe,
[src]
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,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Downcast for T where
T: Any,
[src]
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
[src]
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
[src]
pub fn as_any(&self) -> &(dyn Any + 'static)
[src]
pub 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>,
pub fn to_subset(&self) -> Option<SS>
[src]
pub fn is_in_subset(&self) -> bool
[src]
pub fn to_subset_unchecked(&self) -> SS
[src]
pub 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.
pub 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.
pub 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>,