b2ContactFilter

Struct b2ContactFilter 

Source
pub struct b2ContactFilter { /* private fields */ }
Expand description

Implement this class to provide collision filtering. In other words, you can implement this class if you want finer control over contact creation.

Implementations§

Source§

impl b2ContactFilter

Source

pub unsafe fn ShouldCollide( self: Pin<&mut b2ContactFilter>, fixtureA: *mut b2Fixture, fixtureB: *mut b2Fixture, ) -> bool

Return true if contact calculations should be performed between these two shapes. @warning for performance reasons this is only called when the AABBs begin to overlap.

Source

pub unsafe fn ShouldCollide1( self: Pin<&mut b2ContactFilter>, fixture: *mut b2Fixture, particleSystem: *mut b2ParticleSystem, particleIndex: c_int, ) -> bool

Return true if contact calculations should be performed between a fixture and particle. This is only called if the b2_fixtureContactListenerParticle flag is set on the particle.

Source

pub unsafe fn ShouldCollide2( self: Pin<&mut b2ContactFilter>, particleSystem: *mut b2ParticleSystem, particleIndexA: c_int, particleIndexB: c_int, ) -> bool

Return true if contact calculations should be performed between two particles. This is only called if the b2_particleContactListenerParticle flag is set on the particle.

Source

pub fn new() -> impl New<Output = Self>

Synthesized default constructor.

Trait Implementations§

Source§

impl CopyNew for b2ContactFilter

Source§

unsafe fn copy_new( other: &b2ContactFilter, this: Pin<&mut MaybeUninit<b2ContactFilter>>, )

Synthesized copy constructor.

Source§

impl Drop for b2ContactFilter

Source§

fn drop(self: &mut b2ContactFilter)

Executes the destructor for this type. Read more
Source§

impl ExternType for b2ContactFilter

Source§

type Id = (b, _2, C, o, n, t, a, c, t, F, i, l, t, e, r)

A type-level representation of the type’s C++ namespace and type name. Read more
Source§

type Kind = Opaque

Source§

impl MakeCppStorage for b2ContactFilter

Source§

unsafe fn allocate_uninitialized_cpp_storage() -> *mut b2ContactFilter

Allocates heap space for this type in C++ and return a pointer to that space, but do not initialize that space (i.e. do not yet call a constructor). Read more
Source§

unsafe fn free_uninitialized_cpp_storage(arg0: *mut b2ContactFilter)

Frees a C++ allocation which has not yet had a constructor called. Read more
Source§

impl SharedPtrTarget for b2ContactFilter

Source§

impl UniquePtrTarget for b2ContactFilter

Source§

impl WeakPtrTarget for b2ContactFilter

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.