[][src]Struct ncollide3d::partitioning::DBVT

pub struct DBVT<N: RealField, T, BV> { /* fields omitted */ }

A bounding volume hierarchy on which objects can be added or removed after construction.

Methods

impl<N: RealField, T, BV: BoundingVolume<N>> DBVT<N, T, BV>[src]

pub fn new() -> DBVT<N, T, BV>[src]

Creates a new empty dynamic bonding volume hierarchy.

pub fn root_bounding_volume(&self) -> Option<&BV>[src]

The bounding volume of the root of this DBVT.

Returns None if the DBVT is empty.

pub fn is_empty(&self) -> bool[src]

Indicates whether this DBVT empty.

pub fn insert(&mut self, leaf: DBVTLeaf<N, T, BV>) -> DBVTLeafId[src]

Inserts a leaf into this DBVT.

pub fn remove(&mut self, leaf_id: DBVTLeafId) -> DBVTLeaf<N, T, BV>[src]

Removes a leaf from this DBVT.

Panics if the provided leaf is not attached to this DBVT.

pub fn get(&self, DBVTLeafId: DBVTLeafId) -> Option<&DBVTLeaf<N, T, BV>>[src]

Gets the given leaf if it exists.

Trait Implementations

impl<'a, N: RealField, T, BV> BVH<T, BV> for DBVT<N, T, BV>[src]

type Node = DBVTNodeId

Type of a node identifiers on this BVH.

impl<N: Clone + RealField, T: Clone, BV: Clone> Clone for DBVT<N, T, BV>[src]

impl<N: RealField, T, BV> Index<DBVTLeafId> for DBVT<N, T, BV>[src]

type Output = DBVTLeaf<N, T, BV>

The returned type after indexing.

Auto Trait Implementations

impl<N, T, BV> RefUnwindSafe for DBVT<N, T, BV> where
    BV: RefUnwindSafe,
    N: RefUnwindSafe + Scalar,
    T: RefUnwindSafe

impl<N, T, BV> Send for DBVT<N, T, BV> where
    BV: Send,
    N: Scalar,
    T: Send

impl<N, T, BV> Sync for DBVT<N, T, BV> where
    BV: Sync,
    N: Scalar,
    T: Sync

impl<N, T, BV> Unpin for DBVT<N, T, BV> where
    BV: Unpin,
    N: Scalar + Unpin,
    T: Unpin

impl<N, T, BV> UnwindSafe for DBVT<N, T, BV> where
    BV: UnwindSafe,
    N: Scalar + UnwindSafe,
    T: UnwindSafe

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> 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.

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