Skip to main content

ComputeMassProperties2d

Trait ComputeMassProperties2d 

Source
pub trait ComputeMassProperties2d {
    // Required methods
    fn mass(&self, density: f32) -> f32;
    fn unit_angular_inertia(&self) -> f32;
    fn center_of_mass(&self) -> Vec2;

    // Provided methods
    fn angular_inertia(&self, mass: f32) -> f32 { ... }
    fn mass_properties(&self, density: f32) -> MassProperties2d { ... }
}
Expand description

A trait for computing MassProperties2d for 2D objects.

For the 3D equivalent, see ComputeMassProperties3d.

Required Methods§

Source

fn mass(&self, density: f32) -> f32

Computes the mass of the object with a given density.

Source

fn unit_angular_inertia(&self) -> f32

Computes the angular inertia corresponding to a mass of 1.0.

Source

fn center_of_mass(&self) -> Vec2

Computes the local center of mass relative to the object’s origin.

Provided Methods§

Source

fn angular_inertia(&self, mass: f32) -> f32

Computes the angular inertia corresponding to the given mass.

Equivalent to mass * shape.unit_angular_inertia().

Source

fn mass_properties(&self, density: f32) -> MassProperties2d

Computes the MassProperties2d with a given density.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl ComputeMassProperties2d for Annulus

Source§

fn mass(&self, density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

impl ComputeMassProperties2d for Arc2d

Source§

fn mass(&self, _density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn angular_inertia(&self, _mass: f32) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

fn mass_properties(&self, _density: f32) -> MassProperties2d

Source§

impl ComputeMassProperties2d for Capsule2d

Source§

fn mass(&self, density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

fn mass_properties(&self, density: f32) -> MassProperties2d

Source§

impl ComputeMassProperties2d for Circle

Source§

fn mass(&self, density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

impl ComputeMassProperties2d for CircularSector

Source§

fn mass(&self, density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

impl ComputeMassProperties2d for CircularSegment

Source§

fn mass(&self, density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

impl ComputeMassProperties2d for ConvexPolygon

Source§

fn mass(&self, density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

fn mass_properties(&self, density: f32) -> MassProperties2d

Source§

impl ComputeMassProperties2d for Ellipse

Source§

fn mass(&self, density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

impl ComputeMassProperties2d for Line2d

Source§

fn mass(&self, _density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn angular_inertia(&self, _mass: f32) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

fn mass_properties(&self, _density: f32) -> MassProperties2d

Source§

impl ComputeMassProperties2d for Plane2d

Source§

fn mass(&self, _density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn angular_inertia(&self, _mass: f32) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

fn mass_properties(&self, _density: f32) -> MassProperties2d

Source§

impl ComputeMassProperties2d for Polyline2d

Source§

fn mass(&self, _density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn angular_inertia(&self, _mass: f32) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

fn mass_properties(&self, _density: f32) -> MassProperties2d

Source§

impl ComputeMassProperties2d for Rectangle

Source§

fn mass(&self, density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

impl ComputeMassProperties2d for RegularPolygon

Source§

fn mass(&self, density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

impl ComputeMassProperties2d for Rhombus

Source§

fn mass(&self, density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

impl ComputeMassProperties2d for Segment2d

Source§

fn mass(&self, _density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn angular_inertia(&self, _mass: f32) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

fn mass_properties(&self, _density: f32) -> MassProperties2d

Source§

impl ComputeMassProperties2d for Triangle2d

Source§

fn mass(&self, density: f32) -> f32

Source§

fn unit_angular_inertia(&self) -> f32

Source§

fn center_of_mass(&self) -> Vec2

Source§

fn mass_properties(&self, density: f32) -> MassProperties2d

Implementors§