Struct let_engine::objects::physics::joints::GenericJointBuilder
source · pub struct GenericJointBuilder(pub GenericJoint);Expand description
Create generic joints using the builder pattern.
Tuple Fields§
§0: GenericJointImplementations§
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: (Vec2, f32)) -> Self
pub fn local_frame1(self, local_frame: (Vec2, f32)) -> Self
Sets the joint’s frame, expressed in the first rigid-body’s local-space.
sourcepub fn local_frame2(self, local_frame: (Vec2, f32)) -> Self
pub fn local_frame2(self, local_frame: (Vec2, f32)) -> Self
Sets the joint’s frame, expressed in the second rigid-body’s local-space.
sourcepub fn local_axis1(self, local_axis: Vec2) -> Self
pub fn local_axis1(self, local_axis: Vec2) -> 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: Vec2) -> Self
pub fn local_axis2(self, local_axis: Vec2) -> 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: Vec2) -> Self
pub fn local_anchor1(self, anchor1: Vec2) -> Self
Sets the anchor of this joint, expressed in the first rigid-body’s local-space.
sourcepub fn local_anchor2(self, anchor2: Vec2) -> Self
pub fn local_anchor2(self, anchor2: Vec2) -> Self
Sets the anchor of this joint, expressed in the second rigid-body’s local-space.
sourcepub fn limits(self, axis: JointAxis, limits: [Real; 2]) -> Self
pub fn limits(self, axis: JointAxis, limits: [Real; 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: Real,
factor: Real
) -> Self
pub fn motor_velocity( self, axis: JointAxis, target_vel: Real, factor: Real ) -> Self
Sets the target velocity this motor needs to reach.
sourcepub fn motor_position(
self,
axis: JointAxis,
target_pos: Real,
stiffness: Real,
damping: Real
) -> Self
pub fn motor_position( self, axis: JointAxis, target_pos: Real, stiffness: Real, damping: Real ) -> Self
Sets the target angle this motor needs to reach.
sourcepub fn set_motor(
self,
axis: JointAxis,
target_pos: Real,
target_vel: Real,
stiffness: Real,
damping: Real
) -> Self
pub fn set_motor( self, axis: JointAxis, target_pos: Real, target_vel: Real, stiffness: Real, damping: Real ) -> Self
Configure both the target angle and target velocity of the motor.
sourcepub fn motor_max_force(self, axis: JointAxis, max_force: Real) -> Self
pub fn motor_max_force(self, axis: JointAxis, max_force: Real) -> Self
Sets the maximum force the motor can deliver along the specified axis.
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) -> Self
fn from(val: GenericJointBuilder) -> Self
source§impl PartialEq for GenericJointBuilder
impl PartialEq for GenericJointBuilder
source§fn eq(&self, other: &GenericJointBuilder) -> bool
fn eq(&self, other: &GenericJointBuilder) -> bool
self and other values to be equal, and is used
by ==.impl Copy for GenericJointBuilder
impl StructuralPartialEq for GenericJointBuilder
Auto Trait Implementations§
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§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.§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.§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.§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.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§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).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.