Struct rapier2d::dynamics::CCDSolver[][src]

pub struct CCDSolver { /* fields omitted */ }

Solver responsible for performing motion-clamping on fast-moving bodies.

Implementations

impl CCDSolver[src]

pub fn new() -> Self[src]

Initializes a new CCD solver

pub fn with_query_dispatcher<D>(d: D) -> Self where
    D: 'static + QueryDispatcher
[src]

Initializes a CCD solver with a custom QueryDispatcher used for computing time-of-impacts.

Use this constructor in order to use a custom QueryDispatcher that is aware of your own user-defined shapes.

pub fn clamp_motions(
    &self,
    dt: Real,
    bodies: &mut RigidBodySet,
    impacts: &PredictedImpacts
)
[src]

Apply motion-clamping to the bodies affected by the given impacts.

The impacts should be the result of a previous call to self.predict_next_impacts.

pub fn update_ccd_active_flags(
    &self,
    bodies: &mut RigidBodySet,
    dt: Real,
    include_forces: bool
) -> bool
[src]

Updates the set of bodies that needs CCD to be resolved.

Returns true if any rigid-body must have CCD resolved.

pub fn find_first_impact(
    &mut self,
    dt: Real,
    bodies: &RigidBodySet,
    colliders: &ColliderSet,
    narrow_phase: &NarrowPhase
) -> Option<Real>
[src]

Find the first time a CCD-enabled body has a non-sensor collider hitting another non-sensor collider.

pub fn predict_impacts_at_next_positions(
    &mut self,
    dt: Real,
    bodies: &RigidBodySet,
    colliders: &ColliderSet,
    narrow_phase: &NarrowPhase,
    events: &dyn EventHandler
) -> PredictedImpacts
[src]

Outputs the set of bodies as well as their first time-of-impact event.

Trait Implementations

impl Clone for CCDSolver[src]

Auto Trait Implementations

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
[src]

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

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

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

impl<T> Pointable for T

type Init = T

The type for initializers.

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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.