pub fn points_in_box<'a>(&'a self, aabb: &'a Aabb3<f32>) -> PointsInBoxIterator<'a> {
        let mut intersecting_nodes = Vec::new();
        let mut open_list = vec![
            Node::root_with_bounding_cube(Cube::bounding(&self.meta.bounding_box)),
        ];
        while !open_list.is_empty() {
            let current = open_list.pop().unwrap();
            if !aabb.intersects(&current.bounding_cube.to_aabb3()) {
                continue;
            }
            intersecting_nodes.push(current.id);
            for child_index in 0..8 {
                let child = current.get_child(ChildIndex::from_u8(child_index));
                if self.nodes.contains_key(&child.id) {
                    open_list.push(child);
                }
            }
        }
        PointsInBoxIterator {
            octree_meta: &self.meta,
            aabb,
            intersecting_nodes,
        }
    }
/// Returns the ids of all nodes that cut or are fully contained in 'aabb'.
Returns the ids of all nodes that cut or are fully contained in 'aabb'.
Returns the ids of all nodes that cut or are fully contained in ' aabb ' .
pub fn points_in_box<'a>(&'a self, aabb: &'a Aabb3<f32>) -> PointsInBoxIterator<'a> {
        let mut intersecting_nodes = Vec::new();
        let mut open_list = vec![
            Node::root_with_bounding_cube(Cube::bounding(&self.meta.bounding_box)),
        ];
        while !open_list.is_empty() {
            let current = open_list.pop().unwrap();
            if !aabb.intersects(&current.bounding_cube.to_aabb3()) {
                continue;
            }
            intersecting_nodes.push(current.id);
            for child_index in 0..8 {
                let child = current.get_child(ChildIndex::from_u8(child_index));
                if self.nodes.contains_key(&child.id) {
                    open_list.push(child);
                }
            }
        }
        PointsInBoxIterator {
            octree_meta: &self.meta,
            aabb,
            intersecting_nodes,
        }
    }
pub fn points_in_box < ' a > ( & ' a self , aabb : & ' a Aabb3 < f32 > ) -> PointsInBoxIterator < ' a > { let mut intersecting_nodes = Vec :: new ( ) ; let mut open_list = vec ! [ Node root_with_bounding_cube ( Cube bounding ( self meta bounding_box ) ) ] ; while ! open_list . is_empty ( ) { let current = open_list . pop ( ) . unwrap ( ) ; if ! aabb . intersects ( & current . bounding_cube . to_aabb3 ( ) ) { continue ; } intersecting_nodes . push ( current . id ) ; for child_index in 0 .. 8 { let child = current . get_child ( ChildIndex :: from_u8 ( child_index ) ) ; if self . nodes . contains_key ( & child . id ) { open_list . push ( child ) ; } } } PointsInBoxIterator { octree_meta : & self . meta , aabb , intersecting_nodes , } }
Returns the ids of all nodes that cut or are fully contained in 'aabb'.
Returns the ids of all nodes that cut or are fully contained in ' aabb ' .
&'a self
aabb
&'a Aabb3<f32>
&'a self
aabb
&'a Aabb3<f32>