# Struct nphysics3d::joint::FixedJoint [−][src]

pub struct FixedJoint<N: Real> { /* fields omitted */ }

A joint that does not allow any relative degrees of freedom.

## Methods

`impl<N: Real> FixedJoint<N>`

[src]

`impl<N: Real> FixedJoint<N>`

`pub fn new(pos_wrt_body: Isometry<N>) -> Self`

[src]

`pub fn new(pos_wrt_body: Isometry<N>) -> Self`

Create a joint that does not a allow any degrees of freedom between two multibody links.

The descendent attached to this joint will have a position maintained to `pos_wrt_pody`

relative to its parent.

## Trait Implementations

`impl<N: Copy + Real> Copy for FixedJoint<N>`

[src]

`impl<N: Copy + Real> Copy for FixedJoint<N>`

`impl<N: Clone + Real> Clone for FixedJoint<N>`

[src]

`impl<N: Clone + Real> Clone for FixedJoint<N>`

`fn clone(&self) -> FixedJoint<N>`

[src]

`fn clone(&self) -> FixedJoint<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 FixedJoint<N>`

[src]

`impl<N: Debug + Real> Debug for FixedJoint<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 FixedJoint<N>`

[src]

`impl<N: Real> Joint<N> for FixedJoint<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: &Vector<N>,

body_shift: &Vector<N>

) -> Isometry<N>

[src]

`fn body_to_parent(`

&self,

parent_shift: &Vector<N>,

body_shift: &Vector<N>

) -> Isometry<N>

The position of the multibody link containing this joint relative to its parent.

`fn update_jacobians(&mut self, _: &Vector<N>, _: &[N])`

[src]

`fn update_jacobians(&mut self, _: &Vector<N>, _: &[N])`

Update the jacobians of this joint.

`fn jacobian(&self, _: &Isometry<N>, _: &mut JacobianSliceMut<N>)`

[src]

`fn jacobian(&self, _: &Isometry<N>, _: &mut JacobianSliceMut<N>)`

Sets in `out`

the non-zero entries of the joint jacobian transformed by `transform`

.

`fn jacobian_dot(&self, _: &Isometry<N>, _: &mut JacobianSliceMut<N>)`

[src]

`fn jacobian_dot(&self, _: &Isometry<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,

_: &Isometry<N>,

_: &[N],

_: &mut JacobianSliceMut<N>

)

[src]

`fn jacobian_dot_veldiff_mul_coordinates(`

&self,

_: &Isometry<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 integrate(&mut self, _: &IntegrationParameters<N>, _: &[N])`

[src]

`fn integrate(&mut self, _: &IntegrationParameters<N>, _: &[N])`

Integrate the position of this joint.

`fn apply_displacement(&mut self, _: &[N])`

[src]

`fn apply_displacement(&mut self, _: &[N])`

Apply a displacement to the joint.

`fn jacobian_mul_coordinates(&self, _: &[N]) -> Velocity<N>`

[src]

`fn jacobian_mul_coordinates(&self, _: &[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, _: &mut DVectorSliceMut<N>)`

[src]

`fn default_damping(&self, _: &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 nimpulses(&self) -> usize`

[src]

`fn nimpulses(&self) -> usize`

The maximum number of impulses needed by this joints for its constraints. Read more

`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],

_velocity_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],

_velocity_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.

## Auto Trait Implementations

`impl<N> Send for FixedJoint<N>`

`impl<N> Send for FixedJoint<N>`

`impl<N> Sync for FixedJoint<N>`

`impl<N> Sync for FixedJoint<N>`