[−][src]Struct nphysics3d::joint::RevoluteJoint
A unit joint that allows only one relative rotational degree of freedom between two multibody links.
Methods
impl<N: RealField> RevoluteJoint<N>
[src]
pub fn new(axis: Unit<AngularVector<N>>, angle: N) -> Self
[src]
Create a new revolute joint with an axis and an initial angle.
The axis along which the rotation can happen is expressed in the local coordinate system of the attached multibody links.
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_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: RealField> Joint<N> for RevoluteJoint<N>
[src]
fn clone(&self) -> Box<dyn Joint<N>>
[src]
fn ndofs(&self) -> usize
[src]
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>
fn update_jacobians(&mut self, body_shift: &Vector<N>, vels: &[N])
[src]
fn jacobian(&self, transform: &Isometry<N>, out: &mut JacobianSliceMut<N>)
[src]
fn jacobian_dot(&self, transform: &Isometry<N>, out: &mut JacobianSliceMut<N>)
[src]
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>
)
fn integrate(&mut self, params: &IntegrationParameters<N>, vels: &[N])
[src]
fn default_damping(&self, out: &mut DVectorSliceMut<N>)
[src]
fn apply_displacement(&mut self, disp: &[N])
[src]
fn jacobian_mul_coordinates(&self, acc: &[N]) -> Velocity<N>
[src]
fn jacobian_dot_mul_coordinates(&self, acc: &[N]) -> Velocity<N>
[src]
fn num_velocity_constraints(&self) -> usize
[src]
fn velocity_constraints(
&self,
params: &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>
)
[src]
&self,
params: &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>
)
fn num_position_constraints(&self) -> usize
[src]
fn position_constraint(
&self,
_: usize,
multibody: &Multibody<N>,
link: &MultibodyLink<N>,
dof_id: usize,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N>>
[src]
&self,
_: usize,
multibody: &Multibody<N>,
link: &MultibodyLink<N>,
dof_id: usize,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N>>
fn nimpulses(&self) -> usize
[src]
The maximum number of impulses needed by this joints for its constraints. Read more
impl<N: RealField> UnitJoint<N> for RevoluteJoint<N>
[src]
fn position(&self) -> N
[src]
fn motor(&self) -> &JointMotor<N, N>
[src]
fn min_position(&self) -> Option<N>
[src]
fn max_position(&self) -> Option<N>
[src]
impl<N: Copy + RealField> Copy for RevoluteJoint<N>
[src]
impl<N: Clone + RealField> Clone for RevoluteJoint<N>
[src]
fn clone(&self) -> RevoluteJoint<N>
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<N: Debug + RealField> Debug for RevoluteJoint<N>
[src]
Auto Trait Implementations
impl<N> Send for RevoluteJoint<N> where
N: Scalar,
N: Scalar,
impl<N> Sync for RevoluteJoint<N> where
N: Scalar,
N: Scalar,
Blanket Implementations
impl<T> From for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
impl<T, U> TryFrom 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> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto 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> 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<SS, SP> SupersetOf for SP where
SS: SubsetOf<SP>,
[src]
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
[src]
fn is_in_subset(&self) -> bool
[src]
unsafe fn to_subset_unchecked(&self) -> SS
[src]
fn from_subset(element: &SS) -> SP
[src]
impl<T> Same for T
type Output = T
Should always be Self