pub struct SpatialIndex { /* private fields */ }Expand description
Spatial index wrapping an octree for pre-filtering graph traversal candidates.
Build once from the node array, reuse across multiple algorithm calls. Provides O(log n) spatial queries instead of O(n) brute-force containment checks.
Implementations§
Source§impl SpatialIndex
impl SpatialIndex
Sourcepub fn from_nodes(nodes: &[GraphNode4D]) -> Self
pub fn from_nodes(nodes: &[GraphNode4D]) -> Self
Build a spatial index from a slice of graph nodes.
Sourcepub fn prefilter(&self, region: &SpatialRegion) -> HashSet<u64>
pub fn prefilter(&self, region: &SpatialRegion) -> HashSet<u64>
Pre-filter node IDs matching the spatial region using the octree.
Returns a HashSet of node IDs that fall within the region.
Use this to populate TraversalContext4D::spatial_candidates.
Trait Implementations§
Source§impl Clone for SpatialIndex
impl Clone for SpatialIndex
Source§fn clone(&self) -> SpatialIndex
fn clone(&self) -> SpatialIndex
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for SpatialIndex
impl RefUnwindSafe for SpatialIndex
impl Send for SpatialIndex
impl Sync for SpatialIndex
impl Unpin for SpatialIndex
impl UnsafeUnpin for SpatialIndex
impl UnwindSafe for SpatialIndex
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more