Struct heron::rapier_plugin::rapier3d::prelude::RigidBodyVelocity [−]
pub struct RigidBodyVelocity {
pub linvel: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 3_usize, 1_usize>>,
pub angvel: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 3_usize, 1_usize>>,
}
Expand description
The velocities of this rigid-body.
Fields
linvel: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 3_usize, 1_usize>>
The linear velocity of the rigid-body.
angvel: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 3_usize, 1_usize>>
The angular velocity of the rigid-body.
Implementations
impl RigidBodyVelocity
impl RigidBodyVelocity
pub fn zero() -> RigidBodyVelocity
pub fn zero() -> RigidBodyVelocity
Velocities set to zero.
pub fn pseudo_kinetic_energy(&self) -> f32
pub fn pseudo_kinetic_energy(&self) -> f32
The approximate kinetic energy of this rigid-body.
This approximation does not take the rigid-body’s mass and angular inertia into account.
pub fn apply_damping(
&self,
dt: f32,
damping: &RigidBodyDamping
) -> RigidBodyVelocity
pub fn apply_damping(
&self,
dt: f32,
damping: &RigidBodyDamping
) -> RigidBodyVelocity
Returns the update velocities after applying the given damping.
The velocity of the given world-space point on this rigid-body.
Integrate the velocities in self
to compute obtain new positions when moving from the given
inital position init_pos
.
pub fn kinetic_energy(&self, rb_mprops: &RigidBodyMassProps) -> f32
pub fn kinetic_energy(&self, rb_mprops: &RigidBodyMassProps) -> f32
The kinetic energy of this rigid-body.
pub fn apply_impulse(
&mut self,
rb_mprops: &RigidBodyMassProps,
impulse: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 3_usize, 1_usize>>
)
pub fn apply_impulse(
&mut self,
rb_mprops: &RigidBodyMassProps,
impulse: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 3_usize, 1_usize>>
)
Applies an impulse at the center-of-mass of this rigid-body. The impulse is applied right away, changing the linear velocity. This does nothing on non-dynamic bodies.
pub fn apply_torque_impulse(
&mut self,
rb_mprops: &RigidBodyMassProps,
torque_impulse: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 3_usize, 1_usize>>
)
pub fn apply_torque_impulse(
&mut self,
rb_mprops: &RigidBodyMassProps,
torque_impulse: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 3_usize, 1_usize>>
)
Applies an angular impulse at the center-of-mass of this rigid-body. The impulse is applied right away, changing the angular velocity. This does nothing on non-dynamic bodies.
pub fn apply_impulse_at_point(
&mut self,
rb_mprops: &RigidBodyMassProps,
impulse: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 3_usize, 1_usize>>,
point: OPoint<f32, Const<3_usize>>
)
pub fn apply_impulse_at_point(
&mut self,
rb_mprops: &RigidBodyMassProps,
impulse: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 3_usize, 1_usize>>,
point: OPoint<f32, Const<3_usize>>
)
Applies an impulse at the given world-space point of this rigid-body. The impulse is applied right away, changing the linear and/or angular velocities. This does nothing on non-dynamic bodies.
Trait Implementations
impl Clone for RigidBodyVelocity
impl Clone for RigidBodyVelocity
pub fn clone(&self) -> RigidBodyVelocity
pub fn clone(&self) -> RigidBodyVelocity
Returns a copy of the value. Read more
Performs copy-assignment from source
. Read more
impl ComponentSet<RigidBodyVelocity> for RigidBodySet
impl ComponentSet<RigidBodyVelocity> for RigidBodySet
impl ComponentSetMut<RigidBodyVelocity> for RigidBodySet
impl ComponentSetMut<RigidBodyVelocity> for RigidBodySet
pub fn set_internal(&mut self, handle: Index, val: RigidBodyVelocity)
pub fn set_internal(&mut self, handle: Index, val: RigidBodyVelocity)
Set the value of this element.
pub fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut RigidBodyVelocity) -> Result
) -> Option<Result>
pub fn map_mut_internal<Result>(
&mut self,
handle: Index,
f: impl FnOnce(&mut RigidBodyVelocity) -> Result
) -> Option<Result>
Applies the given closure to the element associated to the given handle
. Read more
impl ComponentSetOption<RigidBodyVelocity> for RigidBodySet
impl ComponentSetOption<RigidBodyVelocity> for RigidBodySet
pub fn get(&self, handle: Index) -> Option<&RigidBodyVelocity>
pub fn get(&self, handle: Index) -> Option<&RigidBodyVelocity>
Get the element associated to the given handle
, if there is one.
impl Debug for RigidBodyVelocity
impl Debug for RigidBodyVelocity
impl Default for RigidBodyVelocity
impl Default for RigidBodyVelocity
pub fn default() -> RigidBodyVelocity
pub fn default() -> RigidBodyVelocity
Returns the “default value” for a type. Read more
impl PartialEq<RigidBodyVelocity> for RigidBodyVelocity
impl PartialEq<RigidBodyVelocity> for RigidBodyVelocity
pub fn eq(&self, other: &RigidBodyVelocity) -> bool
pub fn eq(&self, other: &RigidBodyVelocity) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
pub fn ne(&self, other: &RigidBodyVelocity) -> bool
pub fn ne(&self, other: &RigidBodyVelocity) -> bool
This method tests for !=
.
impl Copy for RigidBodyVelocity
impl StructuralPartialEq for RigidBodyVelocity
Auto Trait Implementations
impl RefUnwindSafe for RigidBodyVelocity
impl Send for RigidBodyVelocity
impl Sync for RigidBodyVelocity
impl Unpin for RigidBodyVelocity
impl UnwindSafe for RigidBodyVelocity
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
Convert 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
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
impl<T> FromWorld for T where
T: Default,
impl<T> FromWorld for T where
T: Default,
pub fn from_world(_world: &mut World) -> T
pub fn from_world(_world: &mut World) -> T
Creates Self
using data from the given [World]
impl<T> Pointable for T
impl<T> Pointable for T
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
The inverse inclusion map: attempts to construct self
from the equivalent element of its
superset. Read more
pub fn is_in_subset(&self) -> bool
pub fn is_in_subset(&self) -> bool
Checks if self
is actually part of its subset T
(and can be converted to it).
pub fn to_subset_unchecked(&self) -> SS
pub fn to_subset_unchecked(&self) -> SS
Use with care! Same as self.to_subset
but without any property checks. Always succeeds.
pub fn from_subset(element: &SS) -> SP
pub fn from_subset(element: &SS) -> SP
The inclusion map: converts self
to the equivalent element of its superset.
pub fn clone_type_data(&self) -> Box<dyn TypeData + 'static, Global>
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more