Struct ncollide2df64::partitioning::DBVT
pub struct DBVT<B, BV> { // some fields omitted }
A Dynamic Bounding Volume Tree.
Methods
impl<B, BV> DBVT<B, BV>
fn new() -> DBVT<B, BV>
Creates a new Dynamic Bounding Volume Tree.
impl<BV: 'static + BoundingVolume + Translation<V> + Clone, B: 'static + Clone> DBVT<B, BV>
fn remove(&mut self, leaf: &mut Gc<RefCell<DBVTLeaf<B, BV>>>)
Removes a leaf from the tree. Fails if the tree is empty.
fn insert(&mut self, leaf: Gc<RefCell<DBVTLeaf<B, BV>>>)
Inserts a leaf to the tree.
fn visit<Vis: BVTVisitor<Gc<RefCell<DBVTLeaf<B, BV>>>, BV>>(&self, visitor: &mut Vis)
Visit this tree using… a visitor!
fn interferences_with_leaf(&self, leaf: &DBVTLeaf<B, BV>, out: &mut ~[Gc<RefCell<DBVTLeaf<B, BV>>>])
Finds all leaves which have their bounding boxes intersecting a specific leave's bounding volume.
Arguments:
to_test
- the leaf to check interferences with.out
- will be filled with all leaves intersectingto_test
. Note thatto_test
is not considered intersecting itself.
fn interferences_with_tree(&self, leaf: &DBVT<B, BV>, out: &mut ~[Gc<RefCell<DBVTLeaf<B, BV>>>])
Finds all interferences between this tree and another one.