[−][src]Struct nphysics3d::joint::HelicalJoint
A joint that allows one degree of freedom between two multibody links.
The degree of freedom is the combination of a rotation and a translation along the same axis. Both rotational and translational motions are coupled to generate a screw motion.
Methods
impl<N: RealField> HelicalJoint<N>
[src]
pub fn new(axis: Unit<Vector3<N>>, pitch: N, angle: N) -> Self
[src]
Create an helical joint with the given axis and initial angle.
The pitch
controls how much translation is generated for how much rotation.
In particular, the translational displacement along axis
is given by angle * pitch
.
pub fn offset(&self) -> N
[src]
The translational displacement along the joint axis.
pub fn angle(&self) -> N
[src]
The rotational displacement along the joint axis.
impl<N: RealField> HelicalJoint<N>
[src]
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 HelicalJoint<N>
[src]
fn clone(&self) -> Box<dyn Joint<N>>
[src]
fn ndofs(&self) -> usize
[src]
fn body_to_parent(
&self,
parent_shift: &Vector3<N>,
body_shift: &Vector3<N>
) -> Isometry3<N>
[src]
&self,
parent_shift: &Vector3<N>,
body_shift: &Vector3<N>
) -> Isometry3<N>
fn update_jacobians(&mut self, body_shift: &Vector3<N>, vels: &[N])
[src]
fn jacobian(&self, transform: &Isometry3<N>, out: &mut JacobianSliceMut<N>)
[src]
fn jacobian_dot(&self, transform: &Isometry3<N>, out: &mut JacobianSliceMut<N>)
[src]
fn jacobian_dot_veldiff_mul_coordinates(
&self,
transform: &Isometry3<N>,
acc: &[N],
out: &mut JacobianSliceMut<N>
)
[src]
&self,
transform: &Isometry3<N>,
acc: &[N],
out: &mut JacobianSliceMut<N>
)
fn jacobian_mul_coordinates(&self, vels: &[N]) -> Velocity<N>
[src]
fn jacobian_dot_mul_coordinates(&self, vels: &[N]) -> Velocity<N>
[src]
fn default_damping(&self, out: &mut DVectorSliceMut<N>)
[src]
fn integrate(&mut self, params: &IntegrationParameters<N>, vels: &[N])
[src]
fn apply_displacement(&mut self, disp: &[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 HelicalJoint<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 HelicalJoint<N>
[src]
impl<N: Clone + RealField> Clone for HelicalJoint<N>
[src]
fn clone(&self) -> HelicalJoint<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 HelicalJoint<N>
[src]
Auto Trait Implementations
impl<N> Send for HelicalJoint<N> where
N: Scalar,
N: Scalar,
impl<N> Sync for HelicalJoint<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