[−][src]Trait nphysics2d::object::BodyPart

```pub trait BodyPart<N: RealField>: Downcast + Send + Sync {
fn center_of_mass(&self) -> Point<N>;
fn local_center_of_mass(&self) -> Point<N>;
fn position(&self) -> Isometry<N>;
fn velocity(&self) -> Velocity<N>;
fn inertia(&self) -> Inertia<N>;
fn local_inertia(&self) -> Inertia<N>;

fn is_ground(&self) -> bool { ... }
fn safe_position(&self) -> Isometry<N> { ... }
}```

Trait implemented by each part of a body supported by nphysics.

Required methods

`fn center_of_mass(&self) -> Point<N>`

The center of mass of this body part.

`fn local_center_of_mass(&self) -> Point<N>`

The local center of mass of this body part.

`fn position(&self) -> Isometry<N>`

The position of this body part wrt. the ground.

`fn velocity(&self) -> Velocity<N>`

The velocity of this body part.

`fn inertia(&self) -> Inertia<N>`

The world-space inertia of this body part.

`fn local_inertia(&self) -> Inertia<N>`

The local-space inertia of this body part.

Provided methods

`fn is_ground(&self) -> bool`

Returns `true` if this body part is the ground.

`fn safe_position(&self) -> Isometry<N>`

If CCD is enabled, this is the last position known to be tunnelling-free.

Methods

`impl<N> dyn BodyPart<N> where    N: Any + 'static,    N: RealField, `

`pub fn is<__T: BodyPart<N>>(&self) -> bool`

Returns true if the trait object wraps an object of type `__T`.

`pub fn downcast<__T: BodyPart<N>>(    self: Box<Self>) -> Result<Box<__T>, Box<Self>>`

Returns a boxed object from a boxed trait object if the underlying object is of type `__T`. Returns the original boxed trait if it isn't.

`pub fn downcast_rc<__T: BodyPart<N>>(    self: Rc<Self>) -> Result<Rc<__T>, Rc<Self>>`

Returns an `Rc`-ed object from an `Rc`-ed trait object if the underlying object is of type `__T`. Returns the original `Rc`-ed trait if it isn't.

`pub fn downcast_ref<__T: BodyPart<N>>(&self) -> Option<&__T>`

Returns a reference to the object within the trait object if it is of type `__T`, or `None` if it isn't.

`pub fn downcast_mut<__T: BodyPart<N>>(&mut self) -> Option<&mut __T>`

Returns a mutable reference to the object within the trait object if it is of type `__T`, or `None` if it isn't.