Trait kdbush::PointReader [] [src]

pub trait PointReader {
    fn size_hint(&self) -> usize;
    fn visit_all<F>(&self, visitor: F)
    where
        F: FnMut(usize, f64, f64)
; }

Input points reader trait

Example

struct Points { points: Vec<(f64, f64)> };
impl kdbush::PointReader for Points {
   fn size_hint(&self) -> usize {
       self.points.len()
   }
   fn visit_all<F>(&self, mut visitor: F)
       where F: FnMut(usize, f64, f64)
   {
       for (i, point) in self.points.iter().enumerate() {
           visitor(i, point.0, point.1);
       }
   }
}

Required Methods

Implementors