[][src]Struct nphysics3d::joint::PlanarJoint

pub struct PlanarJoint<N: RealField> { /* fields omitted */ }

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]

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: Clone + RealField> Clone for PlanarJoint<N>[src]

impl<N: Copy + RealField> Copy for PlanarJoint<N>[src]

impl<N: Debug + RealField> Debug for PlanarJoint<N>[src]

impl<N: RealField> Joint<N> for PlanarJoint<N>[src]

Auto Trait Implementations

impl<N> RefUnwindSafe for PlanarJoint<N> where
    N: RefUnwindSafe + Scalar

impl<N> Send for PlanarJoint<N> where
    N: Scalar

impl<N> Sync for PlanarJoint<N> where
    N: Scalar

impl<N> Unpin for PlanarJoint<N> where
    N: Scalar + Unpin

impl<N> UnwindSafe for PlanarJoint<N> where
    N: Scalar + UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Downcast for T where
    T: Any

impl<T> DowncastSync for T where
    T: Send + Sync + Any

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> Slottable for T where
    T: Copy
[src]

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,