PxFilterFlag

Enum PxFilterFlag 

Source
#[repr(i32)]
pub enum PxFilterFlag { Kill = 1, Suppress = 2, Callback = 4, Notify = 12, Default = 0, }
Expand description

Collection of flags describing the filter actions to take for a collision pair.

Variants§

§

Kill = 1

Ignore the collision pair as long as the bounding volumes of the pair objects overlap.

Killed pairs will be ignored by the simulation and won’t run through the filter again until one of the following occurs:

The bounding volumes of the two objects overlap again (after being separated)

The user enforces a re-filtering (see PxScene::resetFiltering)

§

Suppress = 2

Ignore the collision pair as long as the bounding volumes of the pair objects overlap or until filtering relevant data changes for one of the collision objects.

Suppressed pairs will be ignored by the simulation and won’t make another filter request until one of the following occurs:

Same conditions as for killed pairs (see [eKILL])

The filter data or the filter object attributes change for one of the collision objects

§

Callback = 4

Invoke the filter callback (PxSimulationFilterCallback::pairFound) for this collision pair.

§

Notify = 12

Track this collision pair with the filter callback mechanism.

When the bounding volumes of the collision pair lose contact, the filter callback PxSimulationFilterCallback::pairLost will be invoked. Furthermore, the filter status of the collision pair can be adjusted through PxSimulationFilterCallback::statusChange once per frame (until a pairLost() notification occurs).

§

Default = 0

Provided default to get standard behavior:

The application configure the pair’s collision properties once when bounding volume overlap is found and doesn’t get asked again about that pair until overlap status or filter properties changes, or re-filtering is requested.

No notification is provided when bounding volume overlap is lost

The pair will not be killed or suppressed, so collision detection will be processed

Trait Implementations§

Source§

impl Clone for PxFilterFlag

Source§

fn clone(&self) -> PxFilterFlag

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for PxFilterFlag

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for PxFilterFlag

Source§

fn eq(&self, other: &PxFilterFlag) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for PxFilterFlag

Source§

impl Eq for PxFilterFlag

Source§

impl StructuralPartialEq for PxFilterFlag

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.