Struct nphysics3d::joint::UniversalJoint [−][src]
Expand description
A joint that allows only two relative rotations between two multibody links.
Implementations
The lower limit of the rotation angle.
The upper limit of the rotation angle.
Disable the lower limit of the rotation angle.
Disable the upper limit of the rotation angle.
Enable and set the lower limit of the rotation angle.
Enable and set the upper limit of the rotation angle.
Return true
if the angular motor of this joint is enabled.
Enable the angular motor of this joint.
Disable the angular motor of this joint.
The desired angular velocity of the joint motor.
Set the desired angular velocity of the joint motor.
The maximum torque that can be delivered by the joint motor.
Set the maximum torque that can be delivered by the joint motor.
The lower limit of the rotation angle.
The upper limit of the rotation angle.
Disable the lower limit of the rotation angle.
Disable the upper limit of the rotation angle.
Enable and set the lower limit of the rotation angle.
Enable and set the upper limit of the rotation angle.
Return true
if the angular motor of this joint is enabled.
Enable the angular motor of this joint.
Disable the angular motor of this joint.
The desired angular velocity of the joint motor.
Set the desired angular velocity of the joint motor.
The maximum torque that can be delivered by the joint motor.
Set the maximum torque that can be delivered by the joint motor.
Trait Implementations
The position of the multibody link containing this joint relative to its parent.
Update the jacobians of this joint.
Sets in out
the non-zero entries of the joint jacobian transformed by transform
.
Sets in out
the non-zero entries of the time-derivative of the joint jacobian transformed by transform
.
fn jacobian_dot_veldiff_mul_coordinates(
&self,
transform: &Isometry3<N>,
vels: &[N],
out: &mut JacobianSliceMut<'_, N>
)
fn jacobian_dot_veldiff_mul_coordinates(
&self,
transform: &Isometry3<N>,
vels: &[N],
out: &mut JacobianSliceMut<'_, N>
)
Sets in out
the non-zero entries of the velocity-derivative of the time-derivative of the joint jacobian transformed by transform
.
Multiply the joint jacobian by generalized velocities to obtain the relative velocity of the multibody link containing this joint. Read more
Multiply the joint jacobian by generalized accelerations to obtain the relative acceleration of the multibody link containing this joint. Read more
Fill out
with the non-zero entries of a damping that can be applied by default to ensure a good stability of the joint.
Integrate the position of this joint.
Apply a displacement to the joint.
Maximum number of velocity constrains that can be generated by this joint.
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>
)
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>
)
Initialize and generate velocity constraints to enforce, e.g., joint limits and motors.
The maximum number of non-linear position constraints that can be generated by this joint.
fn position_constraint(
&self,
i: usize,
multibody: &Multibody<N>,
link: &MultibodyLink<N>,
handle: BodyPartHandle<()>,
dof_id: usize,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N, ()>>
fn position_constraint(
&self,
i: usize,
multibody: &Multibody<N>,
link: &MultibodyLink<N>,
handle: BodyPartHandle<()>,
dof_id: usize,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N, ()>>
Initialize and generate the i-th position constraints to enforce, e.g., joint limits.
Auto Trait Implementations
impl<N> RefUnwindSafe for UniversalJoint<N> where
N: RefUnwindSafe,
impl<N> Send for UniversalJoint<N>
impl<N> Sync for UniversalJoint<N>
impl<N> Unpin for UniversalJoint<N> where
N: Unpin,
impl<N> UnwindSafe for UniversalJoint<N> where
N: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
type Output = T
type Output = T
Should always be Self
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
Checks if self
is actually part of its subset T
(and can be converted to it).
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
The inclusion map: converts self
to the equivalent element of its superset.