[−][src]Struct ncollide2d::narrow_phase::NarrowPhase
Collision detector dispatcher for collision objects.
Methods
impl<N: RealField> NarrowPhase<N>
[src]
pub fn new(
contact_dispatcher: Box<dyn ContactDispatcher<N>>,
proximity_dispatcher: Box<dyn ProximityDispatcher<N>>
) -> NarrowPhase<N>
[src]
contact_dispatcher: Box<dyn ContactDispatcher<N>>,
proximity_dispatcher: Box<dyn ProximityDispatcher<N>>
) -> NarrowPhase<N>
Creates a new NarrowPhase
.
pub fn update<T>(
&mut self,
objects: &CollisionObjectSlab<N, T>,
contact_events: &mut ContactEvents,
proximity_events: &mut ProximityEvents,
timestamp: usize
)
[src]
&mut self,
objects: &CollisionObjectSlab<N, T>,
contact_events: &mut ContactEvents,
proximity_events: &mut ProximityEvents,
timestamp: usize
)
Updates the narrow-phase by actually computing contact points and proximities between the interactions pairs reported by the broad-phase.
This will push relevant events to contact_events
and proximity_events
.
pub fn handle_interaction<T>(
&mut self,
contact_events: &mut ContactEvents,
proximity_events: &mut ProximityEvents,
objects: &CollisionObjectSlab<N, T>,
handle1: CollisionObjectHandle,
handle2: CollisionObjectHandle,
started: bool
)
[src]
&mut self,
contact_events: &mut ContactEvents,
proximity_events: &mut ProximityEvents,
objects: &CollisionObjectSlab<N, T>,
handle1: CollisionObjectHandle,
handle2: CollisionObjectHandle,
started: bool
)
Handles a pair of collision objects detected as either started or stopped interacting.
pub fn handle_removal<T>(
&mut self,
objects: &CollisionObjectSlab<N, T>,
handle1: CollisionObjectHandle,
handle2: CollisionObjectHandle
)
[src]
&mut self,
objects: &CollisionObjectSlab<N, T>,
handle1: CollisionObjectHandle,
handle2: CollisionObjectHandle
)
Handles the removal of a collision object.
pub fn handle_collision_object_added(
&mut self,
object: CollisionObjectHandle
) -> InteractionGraphIndex
[src]
&mut self,
object: CollisionObjectHandle
) -> InteractionGraphIndex
Handles the addition of a new collision object.
pub fn handle_collision_object_removed<T>(
&mut self,
object: &CollisionObject<N, T>
) -> Option<CollisionObjectHandle>
[src]
&mut self,
object: &CollisionObject<N, T>
) -> Option<CollisionObjectHandle>
Handles the removal of a collision object.
pub fn interaction_graph(&self) -> &InteractionGraph<N>
[src]
The graph where nodes are collision object handles and edges are their interactions (contact or proximity algorithms).
Auto Trait Implementations
impl<N> Send for NarrowPhase<N> where
N: Scalar,
N: Scalar,
impl<N> Sync for NarrowPhase<N> where
N: Scalar,
N: Scalar,
Blanket Implementations
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From for T
[src]
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<SS, SP> SupersetOf for SP where
SS: SubsetOf<SP>,
[src]
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
[src]
fn is_in_subset(&self) -> bool
[src]
unsafe fn to_subset_unchecked(&self) -> SS
[src]
fn from_subset(element: &SS) -> SP
[src]
impl<T> Downcast for T where
T: Any,
[src]
T: Any,
fn into_any(self: Box<T>) -> Box<dyn Any + 'static>
[src]
fn as_any(&self) -> &(dyn Any + 'static)
[src]
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
[src]
impl<T> Same for T
type Output = T
Should always be Self