[−][src]Struct nphysics2d::joint::RevoluteJoint
A unit joint that allows only one relative rotational degree of freedom between two multibody links.
Implementations
impl<N: RealField> RevoluteJoint<N>
[src]
pub fn new(angle: N) -> Self
[src]
Create a new revolute joint with an initial angle.
pub fn axis(&self) -> Unit<AngularVector<N>>
[src]
The axis of the rotational degree of freedom.
pub fn angle(&self) -> N
[src]
The angle of rotation.
pub fn rotation(&self) -> &Rotation<N>
[src]
The rotation from an attached multibody link to its dependent.
pub fn local_jacobian(&self) -> &Velocity<N>
[src]
The jacobian of this joint expressed in the local coordinate frame of the joint.
pub fn local_jacobian_dot(&self) -> &Velocity<N>
[src]
The time-derivative of the jacobian of this joint expressed in the local coordinate frame of the joint.
pub fn local_jacobian_dot_veldiff(&self) -> &Velocity<N>
[src]
The velocity-derivative of the time-derivative of the jacobian of this joint expressed in the local coordinate frame of the joint.
pub fn min_angle(&self) -> Option<N>
[src]
The lower limit of the rotation angle.
pub fn max_angle(&self) -> Option<N>
[src]
The upper limit of the rotation angle.
pub fn disable_min_angle(&mut self)
[src]
Disable the lower limit of the rotation angle.
pub fn disable_max_angle(&mut self)
[src]
Disable the upper limit of the rotation angle.
pub fn enable_min_angle(&mut self, limit: N)
[src]
Enable and set the lower limit of the rotation angle.
pub fn enable_max_angle(&mut self, limit: N)
[src]
Enable and set the upper limit of the rotation angle.
pub fn is_angular_motor_enabled(&self) -> bool
[src]
Return true
if the angular motor of this joint is enabled.
pub fn enable_angular_motor(&mut self)
[src]
Enable the angular motor of this joint.
pub fn disable_angular_motor(&mut self)
[src]
Disable the angular motor of this joint.
pub fn desired_angular_motor_velocity(&self) -> N
[src]
The desired angular velocity of the joint motor.
pub fn set_desired_angular_motor_velocity(&mut self, vel: N)
[src]
Set the desired angular velocity of the joint motor.
pub fn max_angular_motor_velocity(&self) -> N
[src]
The max angular velocity that the joint motor will attempt.
pub fn set_max_angular_motor_velocity(&mut self, max_vel: N)
[src]
Set the maximum angular velocity that the joint motor will attempt.
pub fn max_angular_motor_torque(&self) -> N
[src]
The maximum torque that can be delivered by the joint motor.
pub fn set_max_angular_motor_torque(&mut self, torque: N)
[src]
Set the maximum torque that can be delivered by the joint motor.
Trait Implementations
impl<N: Clone + RealField> Clone for RevoluteJoint<N>
[src]
pub fn clone(&self) -> RevoluteJoint<N>
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<N: Copy + RealField> Copy for RevoluteJoint<N>
[src]
impl<N: Debug + RealField> Debug for RevoluteJoint<N>
[src]
impl<N: RealField> Joint<N> for RevoluteJoint<N>
[src]
pub fn ndofs(&self) -> usize
[src]
pub fn body_to_parent(
&self,
parent_shift: &Vector<N>,
body_shift: &Vector<N>
) -> Isometry<N>
[src]
&self,
parent_shift: &Vector<N>,
body_shift: &Vector<N>
) -> Isometry<N>
pub fn update_jacobians(&mut self, body_shift: &Vector<N>, vels: &[N])
[src]
pub fn jacobian(
&self,
transform: &Isometry<N>,
out: &mut JacobianSliceMut<'_, N>
)
[src]
&self,
transform: &Isometry<N>,
out: &mut JacobianSliceMut<'_, N>
)
pub fn jacobian_dot(
&self,
transform: &Isometry<N>,
out: &mut JacobianSliceMut<'_, N>
)
[src]
&self,
transform: &Isometry<N>,
out: &mut JacobianSliceMut<'_, N>
)
pub fn jacobian_dot_veldiff_mul_coordinates(
&self,
transform: &Isometry<N>,
acc: &[N],
out: &mut JacobianSliceMut<'_, N>
)
[src]
&self,
transform: &Isometry<N>,
acc: &[N],
out: &mut JacobianSliceMut<'_, N>
)
pub fn integrate(&mut self, parameters: &IntegrationParameters<N>, vels: &[N])
[src]
pub fn default_damping(&self, out: &mut DVectorSliceMut<'_, N>)
[src]
pub fn apply_displacement(&mut self, disp: &[N])
[src]
pub fn jacobian_mul_coordinates(&self, acc: &[N]) -> Velocity<N>
[src]
pub fn jacobian_dot_mul_coordinates(&self, acc: &[N]) -> Velocity<N>
[src]
pub fn clone(&self) -> Box<dyn Joint<N>>
[src]
pub fn num_velocity_constraints(&self) -> usize
[src]
pub fn velocity_constraints(
&self,
parameters: &IntegrationParameters<N>,
multibody: &Multibody<N>,
link: &MultibodyLink<N>,
assembly_id: usize,
dof_id: usize,
ext_vels: &[N],
ground_j_id: &mut usize,
jacobians: &mut [N],
constraints: &mut ConstraintSet<N, (), (), usize>
)
[src]
&self,
parameters: &IntegrationParameters<N>,
multibody: &Multibody<N>,
link: &MultibodyLink<N>,
assembly_id: usize,
dof_id: usize,
ext_vels: &[N],
ground_j_id: &mut usize,
jacobians: &mut [N],
constraints: &mut ConstraintSet<N, (), (), usize>
)
pub fn num_position_constraints(&self) -> usize
[src]
pub fn position_constraint(
&self,
_: usize,
multibody: &Multibody<N>,
link: &MultibodyLink<N>,
handle: BodyPartHandle<()>,
dof_id: usize,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N, ()>>
[src]
&self,
_: usize,
multibody: &Multibody<N>,
link: &MultibodyLink<N>,
handle: BodyPartHandle<()>,
dof_id: usize,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N, ()>>
pub fn nimpulses(&self) -> usize
[src]
impl<N: RealField> UnitJoint<N> for RevoluteJoint<N>
[src]
pub fn position(&self) -> N
[src]
pub fn motor(&self) -> &JointMotor<N, N>
[src]
pub fn min_position(&self) -> Option<N>
[src]
pub fn max_position(&self) -> Option<N>
[src]
Auto Trait Implementations
impl<N> RefUnwindSafe for RevoluteJoint<N> where
N: RefUnwindSafe + Scalar,
[src]
N: RefUnwindSafe + Scalar,
impl<N> Send for RevoluteJoint<N> where
N: Scalar,
[src]
N: Scalar,
impl<N> Sync for RevoluteJoint<N> where
N: Scalar,
[src]
N: Scalar,
impl<N> Unpin for RevoluteJoint<N> where
N: Scalar + Unpin,
[src]
N: Scalar + Unpin,
impl<N> UnwindSafe for RevoluteJoint<N> where
N: Scalar + UnwindSafe,
[src]
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<T> Slottable for T where
T: Copy,
[src]
T: Copy,
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> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[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>,