pub struct GenericJointBuilder(pub GenericJoint);
Expand description
Create generic joints using the builder pattern.
Tuple Fields§
§0: GenericJoint
Implementations§
Source§impl GenericJointBuilder
impl GenericJointBuilder
Sourcepub fn new(locked_axes: JointAxesMask) -> Self
pub fn new(locked_axes: JointAxesMask) -> Self
Creates a new generic joint builder.
Sourcepub fn locked_axes(self, axes: JointAxesMask) -> Self
pub fn locked_axes(self, axes: JointAxesMask) -> Self
Sets the degrees of freedom locked by the joint.
Sourcepub fn contacts_enabled(self, enabled: bool) -> Self
pub fn contacts_enabled(self, enabled: bool) -> Self
Sets whether contacts between the attached rigid-bodies are enabled.
Sourcepub fn local_frame1(self, local_frame: Isometry<f32>) -> Self
pub fn local_frame1(self, local_frame: Isometry<f32>) -> Self
Sets the joint’s frame, expressed in the first rigid-body’s local-space.
Sourcepub fn local_frame2(self, local_frame: Isometry<f32>) -> Self
pub fn local_frame2(self, local_frame: Isometry<f32>) -> Self
Sets the joint’s frame, expressed in the second rigid-body’s local-space.
Sourcepub fn local_axis1(self, local_axis: UnitVector<f32>) -> Self
pub fn local_axis1(self, local_axis: UnitVector<f32>) -> Self
Sets the principal (local X) axis of this joint, expressed in the first rigid-body’s local-space.
Sourcepub fn local_axis2(self, local_axis: UnitVector<f32>) -> Self
pub fn local_axis2(self, local_axis: UnitVector<f32>) -> Self
Sets the principal (local X) axis of this joint, expressed in the second rigid-body’s local-space.
Sourcepub fn local_anchor1(self, anchor1: Point<f32>) -> Self
pub fn local_anchor1(self, anchor1: Point<f32>) -> Self
Sets the anchor of this joint, expressed in the first rigid-body’s local-space.
Sourcepub fn local_anchor2(self, anchor2: Point<f32>) -> Self
pub fn local_anchor2(self, anchor2: Point<f32>) -> Self
Sets the anchor of this joint, expressed in the second rigid-body’s local-space.
Sourcepub fn limits(self, axis: JointAxis, limits: [f32; 2]) -> Self
pub fn limits(self, axis: JointAxis, limits: [f32; 2]) -> Self
Sets the joint limits along the specified axis.
Sourcepub fn coupled_axes(self, axes: JointAxesMask) -> Self
pub fn coupled_axes(self, axes: JointAxesMask) -> Self
Sets the coupled degrees of freedom for this joint’s limits and motor.
Sourcepub fn motor_model(self, axis: JointAxis, model: MotorModel) -> Self
pub fn motor_model(self, axis: JointAxis, model: MotorModel) -> Self
Set the spring-like model used by the motor to reach the desired target velocity and position.
Sourcepub fn motor_velocity(
self,
axis: JointAxis,
target_vel: f32,
factor: f32,
) -> Self
pub fn motor_velocity( self, axis: JointAxis, target_vel: f32, factor: f32, ) -> Self
Sets the target velocity this motor needs to reach.
Sourcepub fn motor_position(
self,
axis: JointAxis,
target_pos: f32,
stiffness: f32,
damping: f32,
) -> Self
pub fn motor_position( self, axis: JointAxis, target_pos: f32, stiffness: f32, damping: f32, ) -> Self
Sets the target angle this motor needs to reach.
Sourcepub fn set_motor(
self,
axis: JointAxis,
target_pos: f32,
target_vel: f32,
stiffness: f32,
damping: f32,
) -> Self
pub fn set_motor( self, axis: JointAxis, target_pos: f32, target_vel: f32, stiffness: f32, damping: f32, ) -> Self
Configure both the target angle and target velocity of the motor.
Sourcepub fn motor_max_force(self, axis: JointAxis, max_force: f32) -> Self
pub fn motor_max_force(self, axis: JointAxis, max_force: f32) -> Self
Sets the maximum force the motor can deliver along the specified axis.
Sourcepub fn user_data(self, data: u128) -> Self
pub fn user_data(self, data: u128) -> Self
An arbitrary user-defined 128-bit integer associated to the joints built by this builder.
Sourcepub fn build(self) -> GenericJoint
pub fn build(self) -> GenericJoint
Builds the generic joint.
Trait Implementations§
Source§impl Clone for GenericJointBuilder
impl Clone for GenericJointBuilder
Source§fn clone(&self) -> GenericJointBuilder
fn clone(&self) -> GenericJointBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for GenericJointBuilder
impl Debug for GenericJointBuilder
Source§impl From<GenericJointBuilder> for GenericJoint
impl From<GenericJointBuilder> for GenericJoint
Source§fn from(val: GenericJointBuilder) -> GenericJoint
fn from(val: GenericJointBuilder) -> GenericJoint
Source§impl PartialEq for GenericJointBuilder
impl PartialEq for GenericJointBuilder
impl Copy for GenericJointBuilder
impl StructuralPartialEq for GenericJointBuilder
Auto Trait Implementations§
impl Freeze for GenericJointBuilder
impl RefUnwindSafe for GenericJointBuilder
impl Send for GenericJointBuilder
impl Sync for GenericJointBuilder
impl Unpin for GenericJointBuilder
impl UnwindSafe for GenericJointBuilder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.