Struct rapier2d::dynamics::MassProperties [−][src]
The local mass properties of a rigid-body.
Fields
local_com: Point<f32, 2_usize>
The center of mass of a rigid-body expressed in its local-space.
inv_mass: f32
The inverse of the mass of a rigid-body.
If this is zero, the rigid-body is assumed to have infinite mass.
inv_principal_inertia_sqrt: f32
The inverse of the principal angular inertia of the rigid-body.
Components set to zero are assumed to be infinite along the corresponding principal axis.
Implementations
impl MassProperties
[src]
pub fn new(
local_com: Point<f32, 2_usize>,
mass: f32,
principal_inertia: f32
) -> MassProperties
[src]
local_com: Point<f32, 2_usize>,
mass: f32,
principal_inertia: f32
) -> MassProperties
Initializes the mass properties with the given center-of-mass, mass, and angular inertia.
The center-of-mass is specified in the local-space of the rigid-body.
pub fn world_com(
&self,
pos: &Isometry<f32, Unit<Complex<f32>>, 2_usize>
) -> Point<f32, 2_usize>
[src]
&self,
pos: &Isometry<f32, Unit<Complex<f32>>, 2_usize>
) -> Point<f32, 2_usize>
The world-space center of mass of the rigid-body.
pub fn world_inv_inertia_sqrt(&self, _rot: &Unit<Complex<f32>>) -> f32
[src]
The world-space inverse angular inertia tensor of the rigid-body.
pub fn transform_by(
&self,
m: &Isometry<f32, Unit<Complex<f32>>, 2_usize>
) -> MassProperties
[src]
&self,
m: &Isometry<f32, Unit<Complex<f32>>, 2_usize>
) -> MassProperties
Transform each element of the mass properties.
pub fn set_mass(&mut self, new_mass: f32, adjust_angular_inertia: bool)
[src]
Changes the mass on these mass-properties.
The adjust_angular_inertia
argument should always be true
, unless
there are some specific reasons not to do so. Setting this to true
will automatically adjust the angular inertia of self
to account
for the mass change (i.e. it will multiply the angular inertia by
new_mass / prev_mass
). Setting it to false
will not change the
current angular inertia.
impl MassProperties
[src]
pub fn from_ball(density: f32, radius: f32) -> MassProperties
[src]
Computes the mass properties of a ball.
impl MassProperties
[src]
pub fn from_capsule(
density: f32,
a: Point<f32, 2_usize>,
b: Point<f32, 2_usize>,
radius: f32
) -> MassProperties
[src]
density: f32,
a: Point<f32, 2_usize>,
b: Point<f32, 2_usize>,
radius: f32
) -> MassProperties
Computes the mass properties of a capsule.
impl MassProperties
[src]
pub fn from_compound(
density: f32,
shapes: &[(Isometry<f32, Unit<Complex<f32>>, 2_usize>, SharedShape)]
) -> MassProperties
[src]
density: f32,
shapes: &[(Isometry<f32, Unit<Complex<f32>>, 2_usize>, SharedShape)]
) -> MassProperties
Computes the mass properties of a compound shape.
impl MassProperties
[src]
pub fn from_convex_polygon(
density: f32,
vertices: &[Point<f32, 2_usize>]
) -> MassProperties
[src]
density: f32,
vertices: &[Point<f32, 2_usize>]
) -> MassProperties
Computes the mass properties of a convex polygon.
impl MassProperties
[src]
pub fn from_cuboid(
density: f32,
half_extents: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 2_usize, 1_usize>>
) -> MassProperties
[src]
density: f32,
half_extents: Matrix<f32, Const<{_: usize}>, Const<1_usize>, ArrayStorage<f32, 2_usize, 1_usize>>
) -> MassProperties
Computes the mass properties of a cuboid.
impl MassProperties
[src]
pub fn from_triangle(
density: f32,
a: &Point<f32, 2_usize>,
b: &Point<f32, 2_usize>,
c: &Point<f32, 2_usize>
) -> MassProperties
[src]
density: f32,
a: &Point<f32, 2_usize>,
b: &Point<f32, 2_usize>,
c: &Point<f32, 2_usize>
) -> MassProperties
Computes the mass properties of a triangle.
impl MassProperties
[src]
pub fn from_trimesh(
density: f32,
vertices: &[Point<f32, 2_usize>],
indices: &[[u32; 3]]
) -> MassProperties
[src]
density: f32,
vertices: &[Point<f32, 2_usize>],
indices: &[[u32; 3]]
) -> MassProperties
Computes the mass properties of a triangle-mesh.
Trait Implementations
impl AbsDiffEq<MassProperties> for MassProperties
[src]
type Epsilon = f32
Used for specifying relative comparisons.
pub fn default_epsilon(
) -> <MassProperties as AbsDiffEq<MassProperties>>::Epsilon
[src]
) -> <MassProperties as AbsDiffEq<MassProperties>>::Epsilon
pub fn abs_diff_eq(
&self,
other: &MassProperties,
epsilon: <MassProperties as AbsDiffEq<MassProperties>>::Epsilon
) -> bool
[src]
&self,
other: &MassProperties,
epsilon: <MassProperties as AbsDiffEq<MassProperties>>::Epsilon
) -> bool
pub fn abs_diff_ne(&self, other: &Rhs, epsilon: Self::Epsilon) -> bool
[src]
impl Add<MassProperties> for MassProperties
[src]
type Output = MassProperties
The resulting type after applying the +
operator.
pub fn add(self, other: MassProperties) -> MassProperties
[src]
impl AddAssign<MassProperties> for MassProperties
[src]
pub fn add_assign(&mut self, rhs: MassProperties)
[src]
impl Clone for MassProperties
[src]
pub fn clone(&self) -> MassProperties
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for MassProperties
[src]
impl Debug for MassProperties
[src]
impl PartialEq<MassProperties> for MassProperties
[src]
pub fn eq(&self, other: &MassProperties) -> bool
[src]
pub fn ne(&self, other: &MassProperties) -> bool
[src]
impl RelativeEq<MassProperties> for MassProperties
[src]
pub fn default_max_relative(
) -> <MassProperties as AbsDiffEq<MassProperties>>::Epsilon
[src]
) -> <MassProperties as AbsDiffEq<MassProperties>>::Epsilon
pub fn relative_eq(
&self,
other: &MassProperties,
epsilon: <MassProperties as AbsDiffEq<MassProperties>>::Epsilon,
max_relative: <MassProperties as AbsDiffEq<MassProperties>>::Epsilon
) -> bool
[src]
&self,
other: &MassProperties,
epsilon: <MassProperties as AbsDiffEq<MassProperties>>::Epsilon,
max_relative: <MassProperties as AbsDiffEq<MassProperties>>::Epsilon
) -> bool
pub fn relative_ne(
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
[src]
&self,
other: &Rhs,
epsilon: Self::Epsilon,
max_relative: Self::Epsilon
) -> bool
impl StructuralPartialEq for MassProperties
[src]
impl Sub<MassProperties> for MassProperties
[src]
type Output = MassProperties
The resulting type after applying the -
operator.
pub fn sub(self, other: MassProperties) -> MassProperties
[src]
impl SubAssign<MassProperties> for MassProperties
[src]
pub fn sub_assign(&mut self, rhs: MassProperties)
[src]
impl Sum<MassProperties> for MassProperties
[src]
pub fn sum<I>(iter: I) -> MassProperties where
I: Iterator<Item = MassProperties>,
[src]
I: Iterator<Item = MassProperties>,
impl Zero for MassProperties
[src]
Auto Trait Implementations
impl RefUnwindSafe for MassProperties
impl Send for MassProperties
impl Sync for MassProperties
impl Unpin for MassProperties
impl UnwindSafe for MassProperties
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, Right> ClosedAdd<Right> for T where
T: Add<Right, Output = T> + AddAssign<Right>,
[src]
T: Add<Right, Output = T> + AddAssign<Right>,
impl<T, Right> ClosedSub<Right> for T where
T: Sub<Right, Output = T> + SubAssign<Right>,
[src]
T: Sub<Right, Output = T> + SubAssign<Right>,
impl<T> Downcast for T where
T: Any,
[src]
T: Any,
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
[src]
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
[src]
pub fn as_any(&self) -> &(dyn Any + 'static)
[src]
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
[src]
impl<T> DowncastSync for T where
T: Any + Send + Sync,
[src]
T: Any + Send + Sync,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> Scalar for T where
T: Copy + PartialEq<T> + Debug + Any,
[src]
T: Copy + PartialEq<T> + Debug + Any,
impl<SS, SP> SupersetOf<SS> for SP where
SS: SubsetOf<SP>,
[src]
SS: SubsetOf<SP>,
pub fn to_subset(&self) -> Option<SS>
[src]
pub fn is_in_subset(&self) -> bool
[src]
pub fn to_subset_unchecked(&self) -> SS
[src]
pub fn from_subset(element: &SS) -> SP
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,