[−][src]Struct nphysics3d::joint::PlanarJoint
A joint that allows 1 rotational and 2 translational degrees of freedom.
Methods
impl<N: RealField> PlanarJoint<N>
[src]
pub fn new(
axis1: Unit<Vector3<N>>,
axis2: Unit<Vector3<N>>,
pos1: N,
pos2: N,
angle: N
) -> Self
[src]
axis1: Unit<Vector3<N>>,
axis2: Unit<Vector3<N>>,
pos1: N,
pos2: N,
angle: N
) -> Self
Create a new planar joint where both translational degrees of freedoms are along the provide axii.
The rotational degree of freedom is along an axis orthogonal to axis1
and axis2
. Idealy, the two
provided axii should be orthogonal. All axis are in the local coordinate space of the attached multibody links.
Panics if axis1
and axis2
are near-colinear.
impl<N: RealField> PlanarJoint<N>
[src]
pub fn min_offset_1(&self) -> Option<N>
[src]
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]
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]
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]
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]
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]
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]
Returns true
if the joint translational motor is enabled.
pub fn enable_linear_motor_1(&mut self)
[src]
Enable the joint translational motor.
pub fn disable_linear_motor_1(&mut self)
[src]
Disable the joint translational motor.
pub fn desired_linear_motor_velocity_1(&self) -> N
[src]
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]
Set the desired relative translational velocity to be enforced by the joint motor.
pub fn max_linear_motor_force_1(&self) -> N
[src]
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]
Set the maximum force that can be output by the joint translational motor.
impl<N: RealField> PlanarJoint<N>
[src]
pub fn min_offset_2(&self) -> Option<N>
[src]
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]
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]
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]
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]
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]
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]
Returns true
if the joint translational motor is enabled.
pub fn enable_linear_motor_2(&mut self)
[src]
Enable the joint translational motor.
pub fn disable_linear_motor_2(&mut self)
[src]
Disable the joint translational motor.
pub fn desired_linear_motor_velocity_2(&self) -> N
[src]
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]
Set the desired relative translational velocity to be enforced by the joint motor.
pub fn max_linear_motor_force2(&self) -> N
[src]
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]
Set the maximum force that can be output by the joint translational motor.
impl<N: RealField> PlanarJoint<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 PlanarJoint<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>,
vels: &[N],
out: &mut JacobianSliceMut<N>
)
[src]
&self,
transform: &Isometry3<N>,
vels: &[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,
i: usize,
multibody: &Multibody<N>,
link: &MultibodyLink<N>,
dof_id: usize,
jacobians: &mut [N]
) -> Option<GenericNonlinearConstraint<N>>
[src]
&self,
i: 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: Copy + RealField> Copy for PlanarJoint<N>
[src]
impl<N: Clone + RealField> Clone for PlanarJoint<N>
[src]
fn clone(&self) -> PlanarJoint<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 PlanarJoint<N>
[src]
Auto Trait Implementations
impl<N> Send for PlanarJoint<N> where
N: Scalar,
N: Scalar,
impl<N> Sync for PlanarJoint<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