#[repr(transparent)]pub struct GenericJoint {
pub raw: GenericJoint,
}
Expand description
The description of any joint.
Fields§
§raw: GenericJoint
The raw Rapier description of the joint.
Implementations§
Source§impl GenericJoint
impl GenericJoint
Sourcepub fn into_rapier(self) -> RapierGenericJoint
pub fn into_rapier(self) -> RapierGenericJoint
Converts this joint into a Rapier joint.
Source§impl GenericJoint
impl GenericJoint
Sourcepub fn new(locked_axes: JointAxesMask) -> Self
pub fn new(locked_axes: JointAxesMask) -> Self
Creates a new generic joint that locks the specified degrees of freedom.
Sourcepub fn locked_axes(&self) -> JointAxesMask
pub fn locked_axes(&self) -> JointAxesMask
The set of axes locked by this joint.
Sourcepub fn lock_axes(&mut self, axes: JointAxesMask) -> &mut Self
pub fn lock_axes(&mut self, axes: JointAxesMask) -> &mut Self
Add the specified axes to the set of axes locked by this joint.
Sourcepub fn local_basis1(&self) -> Rot
pub fn local_basis1(&self) -> Rot
The basis of this joint, expressed in the first rigid-body’s local-space.
Sourcepub fn set_local_basis1(&mut self, local_basis: Rot) -> &mut Self
pub fn set_local_basis1(&mut self, local_basis: Rot) -> &mut Self
Sets the joint’s frame, expressed in the first rigid-body’s local-space.
Sourcepub fn local_basis2(&self) -> Rot
pub fn local_basis2(&self) -> Rot
The basis of this joint, expressed in the second rigid-body’s local-space.
Sourcepub fn set_local_basis2(&mut self, local_basis: Rot) -> &mut Self
pub fn set_local_basis2(&mut self, local_basis: Rot) -> &mut Self
Sets the joint’s frame, expressed in the second rigid-body’s local-space.
Sourcepub fn local_axis1(&self) -> Vect
pub fn local_axis1(&self) -> Vect
The principal (local X) axis of this joint, expressed in the first rigid-body’s local-space.
Sourcepub fn set_local_axis1(&mut self, local_axis: Vect) -> &mut Self
pub fn set_local_axis1(&mut self, local_axis: Vect) -> &mut Self
Sets the principal (local X) axis of this joint, expressed in the first rigid-body’s local-space.
Sourcepub fn local_axis2(&self) -> Vect
pub fn local_axis2(&self) -> Vect
The principal (local X) axis of this joint, expressed in the second rigid-body’s local-space.
Sourcepub fn set_local_axis2(&mut self, local_axis: Vect) -> &mut Self
pub fn set_local_axis2(&mut self, local_axis: Vect) -> &mut Self
Sets the principal (local X) axis of this joint, expressed in the second rigid-body’s local-space.
Sourcepub fn local_anchor1(&self) -> Vect
pub fn local_anchor1(&self) -> Vect
The anchor of this joint, expressed in the first rigid-body’s local-space.
Sourcepub fn set_local_anchor1(&mut self, anchor1: Vect) -> &mut Self
pub fn set_local_anchor1(&mut self, anchor1: Vect) -> &mut Self
Sets anchor of this joint, expressed in the first rigid-body’s local-space.
Sourcepub fn local_anchor2(&self) -> Vect
pub fn local_anchor2(&self) -> Vect
The anchor of this joint, expressed in the second rigid-body’s local-space.
Sourcepub fn set_local_anchor2(&mut self, anchor2: Vect) -> &mut Self
pub fn set_local_anchor2(&mut self, anchor2: Vect) -> &mut Self
Sets anchor of this joint, expressed in the second rigid-body’s local-space.
Sourcepub fn contacts_enabled(&self) -> bool
pub fn contacts_enabled(&self) -> bool
Are contacts between the attached rigid-bodies enabled?
Sourcepub fn set_contacts_enabled(&mut self, enabled: bool) -> &mut Self
pub fn set_contacts_enabled(&mut self, enabled: bool) -> &mut Self
Sets whether contacts between the attached rigid-bodies are enabled.
Sourcepub fn limits(&self, axis: JointAxis) -> Option<&JointLimits<Real>>
pub fn limits(&self, axis: JointAxis) -> Option<&JointLimits<Real>>
The joint limits along the specified axis.
Sourcepub fn set_limits(&mut self, axis: JointAxis, limits: [Real; 2]) -> &mut Self
pub fn set_limits(&mut self, axis: JointAxis, limits: [Real; 2]) -> &mut Self
Sets the joint limits along the specified axis.
Sourcepub fn set_coupled_axes(&mut self, axes: JointAxesMask) -> &mut Self
pub fn set_coupled_axes(&mut self, axes: JointAxesMask) -> &mut Self
Sets the coupled degrees of freedom for this joint’s limits and motor.
Sourcepub fn motor_model(&self, axis: JointAxis) -> Option<MotorModel>
pub fn motor_model(&self, axis: JointAxis) -> Option<MotorModel>
The spring-like motor model along the specified axis of this joint.
Sourcepub fn set_motor_model(
&mut self,
axis: JointAxis,
model: MotorModel,
) -> &mut Self
pub fn set_motor_model( &mut self, axis: JointAxis, model: MotorModel, ) -> &mut Self
Set the spring-like model used by the motor to reach the desired target velocity and position.
Sourcepub fn set_motor_velocity(
&mut self,
axis: JointAxis,
target_vel: Real,
factor: Real,
) -> &mut Self
pub fn set_motor_velocity( &mut self, axis: JointAxis, target_vel: Real, factor: Real, ) -> &mut Self
Sets the target velocity this motor needs to reach.
Sourcepub fn set_motor_position(
&mut self,
axis: JointAxis,
target_pos: Real,
stiffness: Real,
damping: Real,
) -> &mut Self
pub fn set_motor_position( &mut self, axis: JointAxis, target_pos: Real, stiffness: Real, damping: Real, ) -> &mut Self
Sets the target angle this motor needs to reach.
Sourcepub fn set_motor_max_force(
&mut self,
axis: JointAxis,
max_force: Real,
) -> &mut Self
pub fn set_motor_max_force( &mut self, axis: JointAxis, max_force: Real, ) -> &mut Self
Sets the maximum force the motor can deliver along the specified axis.
Sourcepub fn motor(&self, axis: JointAxis) -> Option<&JointMotor>
pub fn motor(&self, axis: JointAxis) -> Option<&JointMotor>
The motor affecting the joint’s degree of freedom along the specified axis.
Source§impl GenericJoint
impl GenericJoint
Sourcepub fn as_revolute(&self) -> Option<&RevoluteJoint>
pub fn as_revolute(&self) -> Option<&RevoluteJoint>
Converts the joint to its specific variant, if it is one.
Sourcepub fn as_revolute_mut(&mut self) -> Option<&mut RevoluteJoint>
pub fn as_revolute_mut(&mut self) -> Option<&mut RevoluteJoint>
Converts the joint to its specific mutable variant, if it is one.
Sourcepub fn as_fixed(&self) -> Option<&FixedJoint>
pub fn as_fixed(&self) -> Option<&FixedJoint>
Converts the joint to its specific variant, if it is one.
Sourcepub fn as_fixed_mut(&mut self) -> Option<&mut FixedJoint>
pub fn as_fixed_mut(&mut self) -> Option<&mut FixedJoint>
Converts the joint to its specific mutable variant, if it is one.
Sourcepub fn as_prismatic(&self) -> Option<&PrismaticJoint>
pub fn as_prismatic(&self) -> Option<&PrismaticJoint>
Converts the joint to its specific variant, if it is one.
Sourcepub fn as_prismatic_mut(&mut self) -> Option<&mut PrismaticJoint>
pub fn as_prismatic_mut(&mut self) -> Option<&mut PrismaticJoint>
Converts the joint to its specific mutable variant, if it is one.
Sourcepub fn as_rope(&self) -> Option<&RopeJoint>
pub fn as_rope(&self) -> Option<&RopeJoint>
Converts the joint to its specific variant, if it is one.
Sourcepub fn as_rope_mut(&mut self) -> Option<&mut RopeJoint>
pub fn as_rope_mut(&mut self) -> Option<&mut RopeJoint>
Converts the joint to its specific mutable variant, if it is one.
Trait Implementations§
Source§impl AsMut<GenericJoint> for TypedJoint
impl AsMut<GenericJoint> for TypedJoint
Source§fn as_mut(&mut self) -> &mut GenericJoint
fn as_mut(&mut self) -> &mut GenericJoint
Source§impl AsRef<GenericJoint> for TypedJoint
impl AsRef<GenericJoint> for TypedJoint
Source§fn as_ref(&self) -> &GenericJoint
fn as_ref(&self) -> &GenericJoint
Source§impl Clone for GenericJoint
impl Clone for GenericJoint
Source§fn clone(&self) -> GenericJoint
fn clone(&self) -> GenericJoint
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for GenericJoint
impl Debug for GenericJoint
Source§impl Default for GenericJoint
impl Default for GenericJoint
Source§fn default() -> GenericJoint
fn default() -> GenericJoint
Source§impl From<FixedJoint> for GenericJoint
impl From<FixedJoint> for GenericJoint
Source§fn from(joint: FixedJoint) -> GenericJoint
fn from(joint: FixedJoint) -> GenericJoint
Source§impl From<GenericJointBuilder> for GenericJoint
impl From<GenericJointBuilder> for GenericJoint
Source§fn from(joint: GenericJointBuilder) -> GenericJoint
fn from(joint: GenericJointBuilder) -> GenericJoint
Source§impl From<PrismaticJoint> for GenericJoint
impl From<PrismaticJoint> for GenericJoint
Source§fn from(joint: PrismaticJoint) -> GenericJoint
fn from(joint: PrismaticJoint) -> GenericJoint
Source§impl From<RevoluteJoint> for GenericJoint
impl From<RevoluteJoint> for GenericJoint
Source§fn from(joint: RevoluteJoint) -> GenericJoint
fn from(joint: RevoluteJoint) -> GenericJoint
Source§impl From<RopeJoint> for GenericJoint
impl From<RopeJoint> for GenericJoint
Source§fn from(joint: RopeJoint) -> GenericJoint
fn from(joint: RopeJoint) -> GenericJoint
Source§impl From<SpringJoint> for GenericJoint
impl From<SpringJoint> for GenericJoint
Source§fn from(val: SpringJoint) -> GenericJoint
fn from(val: SpringJoint) -> GenericJoint
Source§impl PartialEq for GenericJoint
impl PartialEq for GenericJoint
impl Copy for GenericJoint
impl StructuralPartialEq for GenericJoint
Auto Trait Implementations§
impl Freeze for GenericJoint
impl RefUnwindSafe for GenericJoint
impl Send for GenericJoint
impl Sync for GenericJoint
impl Unpin for GenericJoint
impl UnwindSafe for GenericJoint
Blanket Implementations§
Source§impl<T, U> AsBindGroupShaderType<U> for T
impl<T, U> AsBindGroupShaderType<U> for T
Source§fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
fn as_bind_group_shader_type(&self, _images: &RenderAssets<GpuImage>) -> U
T
ShaderType
for self
. When used in AsBindGroup
derives, it is safe to assume that all images in self
exist.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> FromWorld for Twhere
T: Default,
impl<T> FromWorld for Twhere
T: Default,
Source§fn from_world(_world: &mut World) -> T
fn from_world(_world: &mut World) -> T
Creates Self
using default()
.
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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.