Struct nphysics3d::joint::RectangularJoint [−][src]
pub struct RectangularJoint<N: Real> { /* fields omitted */ }
A joint that allows two translational degrees of freedom.
Methods
impl<N: Real> RectangularJoint<N>
[src]
impl<N: Real> RectangularJoint<N>
pub fn new(
axis1: Unit<Vector3<N>>,
axis2: Unit<Vector3<N>>,
offset1: N,
offset2: N
) -> Self
[src]
pub fn new(
axis1: Unit<Vector3<N>>,
axis2: Unit<Vector3<N>>,
offset1: N,
offset2: N
) -> Self
Creates a new rectangular joint allowing relative translations anlon the two provided axii.Isometry3
Both axii are expressed in the local coordinate frame on the attached multibody links.
impl<N: Real> RectangularJoint<N>
[src]
impl<N: Real> RectangularJoint<N>
pub fn min_offset_1(&self) -> Option<N>
[src]
pub fn min_offset_1(&self) -> Option<N>
The lower limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn max_offset_1(&self) -> Option<N>
[src]
pub fn max_offset_1(&self) -> Option<N>
The upper limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn disable_min_offset_1(&mut self)
[src]
pub fn disable_min_offset_1(&mut self)
Disable the lower limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn disable_max_offset_1(&mut self)
[src]
pub fn disable_max_offset_1(&mut self)
Disable the upper limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn enable_min_offset_1(&mut self, limit: N)
[src]
pub fn enable_min_offset_1(&mut self, limit: N)
Set the lower limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn enable_max_offset_1(&mut self, limit: N)
[src]
pub fn enable_max_offset_1(&mut self, limit: N)
Set the upper limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn is_linear_motor_enabled_1(&self) -> bool
[src]
pub fn is_linear_motor_enabled_1(&self) -> bool
Returns true
if the joint translational motor is enabled.
pub fn enable_linear_motor_1(&mut self)
[src]
pub fn enable_linear_motor_1(&mut self)
Enable the joint translational motor.
pub fn disable_linear_motor_1(&mut self)
[src]
pub fn disable_linear_motor_1(&mut self)
Disable the joint translational motor.
pub fn desired_linear_motor_velocity_1(&self) -> N
[src]
pub fn desired_linear_motor_velocity_1(&self) -> N
The desired relative translational velocity to be enforced by the joint motor.
pub fn set_desired_linear_motor_velocity_1(&mut self, vel: N)
[src]
pub fn set_desired_linear_motor_velocity_1(&mut self, vel: N)
Set the desired relative translational velocity to be enforced by the joint motor.
pub fn max_linear_motor_force_1(&self) -> N
[src]
pub fn max_linear_motor_force_1(&self) -> N
The maximum force that can be output by the joint translational motor.
pub fn set_max_linear_motor_force_1(&mut self, force: N)
[src]
pub fn set_max_linear_motor_force_1(&mut self, force: N)
Set the maximum force that can be output by the joint translational motor.
impl<N: Real> RectangularJoint<N>
[src]
impl<N: Real> RectangularJoint<N>
pub fn min_offset_2(&self) -> Option<N>
[src]
pub fn min_offset_2(&self) -> Option<N>
The lower limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn max_offset_2(&self) -> Option<N>
[src]
pub fn max_offset_2(&self) -> Option<N>
The upper limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn disable_min_offset_2(&mut self)
[src]
pub fn disable_min_offset_2(&mut self)
Disable the lower limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn disable_max_offset_2(&mut self)
[src]
pub fn disable_max_offset_2(&mut self)
Disable the upper limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn enable_min_offset_2(&mut self, limit: N)
[src]
pub fn enable_min_offset_2(&mut self, limit: N)
Set the lower limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn enable_max_offset_2(&mut self, limit: N)
[src]
pub fn enable_max_offset_2(&mut self, limit: N)
Set the upper limit of the relative translational displacement of the attached multibody links along the joint axis.
pub fn is_linear_motor_enabled_2(&self) -> bool
[src]
pub fn is_linear_motor_enabled_2(&self) -> bool
Returns true
if the joint translational motor is enabled.
pub fn enable_linear_motor_2(&mut self)
[src]
pub fn enable_linear_motor_2(&mut self)
Enable the joint translational motor.
pub fn disable_linear_motor_2(&mut self)
[src]
pub fn disable_linear_motor_2(&mut self)
Disable the joint translational motor.
pub fn desired_linear_motor_velocity_2(&self) -> N
[src]
pub fn desired_linear_motor_velocity_2(&self) -> N
The desired relative translational velocity to be enforced by the joint motor.
pub fn set_desired_linear_motor_velocity_2(&mut self, vel: N)
[src]
pub fn set_desired_linear_motor_velocity_2(&mut self, vel: N)
Set the desired relative translational velocity to be enforced by the joint motor.
pub fn max_linear_motor_force2(&self) -> N
[src]
pub fn max_linear_motor_force2(&self) -> N
The maximum force that can be output by the joint translational motor.
pub fn set_max_linear_motor_force_2(&mut self, force: N)
[src]
pub fn set_max_linear_motor_force_2(&mut self, force: N)
Set the maximum force that can be output by the joint translational motor.
Trait Implementations
impl<N: Copy + Real> Copy for RectangularJoint<N>
[src]
impl<N: Copy + Real> Copy for RectangularJoint<N>
impl<N: Clone + Real> Clone for RectangularJoint<N>
[src]
impl<N: Clone + Real> Clone for RectangularJoint<N>
fn clone(&self) -> RectangularJoint<N>
[src]
fn clone(&self) -> RectangularJoint<N>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl<N: Debug + Real> Debug for RectangularJoint<N>
[src]
impl<N: Debug + Real> Debug for RectangularJoint<N>
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<N: Real> Joint<N> for RectangularJoint<N>
[src]
impl<N: Real> Joint<N> for RectangularJoint<N>
fn ndofs(&self) -> usize
[src]
fn ndofs(&self) -> usize
The number of degrees of freedom allowed by the joint.
fn body_to_parent(
&self,
parent_shift: &Vector3<N>,
body_shift: &Vector3<N>
) -> Isometry3<N>
[src]
fn body_to_parent(
&self,
parent_shift: &Vector3<N>,
body_shift: &Vector3<N>
) -> Isometry3<N>
The position of the multibody link containing this joint relative to its parent.
fn update_jacobians(&mut self, body_shift: &Vector3<N>, vels: &[N])
[src]
fn update_jacobians(&mut self, body_shift: &Vector3<N>, vels: &[N])
Update the jacobians of this joint.
fn jacobian(&self, transform: &Isometry3<N>, out: &mut JacobianSliceMut<N>)
[src]
fn jacobian(&self, transform: &Isometry3<N>, out: &mut JacobianSliceMut<N>)
Sets in out
the non-zero entries of the joint jacobian transformed by transform
.
fn jacobian_dot(&self, _: &Isometry3<N>, _: &mut JacobianSliceMut<N>)
[src]
fn jacobian_dot(&self, _: &Isometry3<N>, _: &mut JacobianSliceMut<N>)
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,
_: &Isometry3<N>,
_: &[N],
_: &mut JacobianSliceMut<N>
)
[src]
fn jacobian_dot_veldiff_mul_coordinates(
&self,
_: &Isometry3<N>,
_: &[N],
_: &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
.
fn jacobian_mul_coordinates(&self, vels: &[N]) -> Velocity<N>
[src]
fn jacobian_mul_coordinates(&self, vels: &[N]) -> Velocity<N>
Multiply the joint jacobian by generalized velocities to obtain the relative velocity of the multibody link containing this joint. Read more
fn jacobian_dot_mul_coordinates(&self, _: &[N]) -> Velocity<N>
[src]
fn jacobian_dot_mul_coordinates(&self, _: &[N]) -> Velocity<N>
Multiply the joint jacobian by generalized accelerations to obtain the relative acceleration of the multibody link containing this joint. Read more
fn default_damping(&self, out: &mut DVectorSliceMut<N>)
[src]
fn default_damping(&self, out: &mut DVectorSliceMut<N>)
Fill out
with the non-zero entries of a damping that can be applied by default to ensure a good stability of the joint.
fn integrate(&mut self, params: &IntegrationParameters<N>, vels: &[N])
[src]
fn integrate(&mut self, params: &IntegrationParameters<N>, vels: &[N])
Integrate the position of this joint.
fn apply_displacement(&mut self, disp: &[N])
[src]
fn apply_displacement(&mut self, disp: &[N])
Apply a displacement to the joint.
fn num_velocity_constraints(&self) -> usize
[src]
fn num_velocity_constraints(&self) -> usize
Maximum number of velocity constrains that can be generated by this joint.
fn velocity_constraints(
&self,
params: &IntegrationParameters<N>,
link: &MultibodyLinkRef<N>,
assembly_id: usize,
dof_id: usize,
ext_vels: &[N],
ground_j_id: &mut usize,
jacobians: &mut [N],
constraints: &mut ConstraintSet<N>
)
[src]
fn velocity_constraints(
&self,
params: &IntegrationParameters<N>,
link: &MultibodyLinkRef<N>,
assembly_id: usize,
dof_id: usize,
ext_vels: &[N],
ground_j_id: &mut usize,
jacobians: &mut [N],
constraints: &mut ConstraintSet<N>
)
Initialize and generate velocity constraints to enforce, e.g., joint limits and motors.
fn num_position_constraints(&self) -> usize
[src]
fn num_position_constraints(&self) -> usize
The maximum number of non-linear position constraints that can be generated by this joint.
fn position_constraint(
&self,
i: usize,
link: &MultibodyLinkRef<N>,
dof_id: usize,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N>>
[src]
fn position_constraint(
&self,
i: usize,
link: &MultibodyLinkRef<N>,
dof_id: usize,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N>>
Initialize and generate the i-th position constraints to enforce, e.g., joint limits.
fn nimpulses(&self) -> usize
[src]
fn nimpulses(&self) -> usize
The maximum number of impulses needed by this joints for its constraints. Read more
Auto Trait Implementations
impl<N> Send for RectangularJoint<N> where
N: Scalar,
impl<N> Send for RectangularJoint<N> where
N: Scalar,
impl<N> Sync for RectangularJoint<N> where
N: Scalar,
impl<N> Sync for RectangularJoint<N> where
N: Scalar,