[][src]Struct nphysics2d::world::MechanicalWorld

pub struct MechanicalWorld<N: RealField, Handle: BodyHandle, CollHandle: ColliderHandle> {
    pub counters: Counters,
    pub solver: MoreauJeanSolver<N, Handle, CollHandle>,
    pub integration_parameters: IntegrationParameters<N>,
    pub material_coefficients: MaterialsCoefficientsTable<N>,
    pub gravity: Vector<N>,
    // some fields omitted
}

The physics world.

Fields

counters: Counters

Performance counters used for debugging and benchmarking nphysics.

solver: MoreauJeanSolver<N, Handle, CollHandle>

The constraints solver.

integration_parameters: IntegrationParameters<N>

Parameters of the whole simulation.

material_coefficients: MaterialsCoefficientsTable<N>

Coefficient table used for resolving material properties to apply at one contact.

gravity: Vector<N>

The acting on this mechanical world.

Methods

impl<N: RealField, Handle: BodyHandle, CollHandle: ColliderHandle> MechanicalWorld<N, Handle, CollHandle>[src]

pub fn new(gravity: Vector<N>) -> Self[src]

Creates a new physics world with default parameters.

The ground body is automatically created and added to the world without any colliders attached.

pub fn timestep(&self) -> N[src]

Retrieve the timestep used for the integration.

pub fn set_timestep(&mut self, dt: N)[src]

Sets the timestep used for the integration.

pub fn maintain<Colliders, Constraints>(
    &mut self,
    gworld: &mut GeometricalWorld<N, Handle, CollHandle>,
    bodies: &mut dyn BodySet<N, Handle = Handle>,
    colliders: &mut Colliders,
    constraints: &mut Constraints
) where
    Colliders: ColliderSet<N, Handle, Handle = CollHandle>,
    Constraints: JointConstraintSet<N, Handle>, 
[src]

Maintain the internal structures of the mechanical world by handling insersion and removal events from every sets this mechanical world interacts with.

pub fn step<Colliders, Constraints, Forces>(
    &mut self,
    gworld: &mut GeometricalWorld<N, Handle, CollHandle>,
    bodies: &mut dyn BodySet<N, Handle = Handle>,
    colliders: &mut Colliders,
    constraints: &mut Constraints,
    forces: &mut Forces
) where
    Colliders: ColliderSet<N, Handle, Handle = CollHandle>,
    Constraints: JointConstraintSet<N, Handle>,
    Forces: ForceGeneratorSet<N, Handle>, 
[src]

Execute one time step of the physics simulation.

Auto Trait Implementations

impl<N, Handle, CollHandle> !RefUnwindSafe for MechanicalWorld<N, Handle, CollHandle>

impl<N, Handle, CollHandle> Send for MechanicalWorld<N, Handle, CollHandle> where
    N: Scalar

impl<N, Handle, CollHandle> Sync for MechanicalWorld<N, Handle, CollHandle> where
    N: Scalar

impl<N, Handle, CollHandle> Unpin for MechanicalWorld<N, Handle, CollHandle> where
    CollHandle: Unpin,
    Handle: Unpin,
    N: Scalar + Unpin

impl<N, Handle, CollHandle> !UnwindSafe for MechanicalWorld<N, Handle, CollHandle>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Downcast for T where
    T: Any

impl<T> DowncastSync for T where
    T: Send + Sync + Any

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,