Struct maplibre::io::geometry_index::IndexProcessor
source · [−]pub struct IndexProcessor {
geo_writer: GeoWriter,
geometries: Vec<IndexedGeometry<f64>>,
properties: Option<HashMap<String, String>>,
}Expand description
A processor able to create geometries using [geozero::geo_types::GeoWriter].
Fields
geo_writer: GeoWritergeometries: Vec<IndexedGeometry<f64>>properties: Option<HashMap<String, String>>Implementations
sourceimpl IndexProcessor
impl IndexProcessor
pub fn new() -> Self
pub fn build_tree(self) -> RTree<IndexedGeometry<f64>>
pub fn get_geometries(self) -> Vec<IndexedGeometry<f64>>
Trait Implementations
sourceimpl Default for IndexProcessor
impl Default for IndexProcessor
sourceimpl FeatureProcessor for IndexProcessor
impl FeatureProcessor for IndexProcessor
sourcefn dataset_begin(&mut self, _name: Option<&str>) -> Result<(), GeozeroError>
fn dataset_begin(&mut self, _name: Option<&str>) -> Result<(), GeozeroError>
Begin of dataset processing.
sourcefn dataset_end(&mut self) -> Result<(), GeozeroError>
fn dataset_end(&mut self) -> Result<(), GeozeroError>
End of dataset processing.
sourcefn feature_begin(&mut self, _idx: u64) -> Result<(), GeozeroError>
fn feature_begin(&mut self, _idx: u64) -> Result<(), GeozeroError>
Begin of feature processing.
sourcefn feature_end(&mut self, _idx: u64) -> Result<(), GeozeroError>
fn feature_end(&mut self, _idx: u64) -> Result<(), GeozeroError>
End of feature processing.
sourcefn properties_begin(&mut self) -> Result<(), GeozeroError>
fn properties_begin(&mut self) -> Result<(), GeozeroError>
Begin of feature property processing.
sourcefn properties_end(&mut self) -> Result<(), GeozeroError>
fn properties_end(&mut self) -> Result<(), GeozeroError>
End of feature property processing.
sourcefn geometry_begin(&mut self) -> Result<(), GeozeroError>
fn geometry_begin(&mut self) -> Result<(), GeozeroError>
Begin of feature geometry processing.
sourcefn geometry_end(&mut self) -> Result<(), GeozeroError>
fn geometry_end(&mut self) -> Result<(), GeozeroError>
End of feature geometry processing.
sourceimpl GeomProcessor for IndexProcessor
impl GeomProcessor for IndexProcessor
sourcefn xy(&mut self, x: f64, y: f64, idx: usize) -> Result<(), GeozeroError>
fn xy(&mut self, x: f64, y: f64, idx: usize) -> Result<(), GeozeroError>
Process coordinate with x,y dimensions
sourcefn point_begin(&mut self, idx: usize) -> Result<(), GeozeroError>
fn point_begin(&mut self, idx: usize) -> Result<(), GeozeroError>
Begin of Point processing Read more
sourcefn multipoint_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn multipoint_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of MultiPoint processing Read more
sourcefn linestring_begin(
&mut self,
tagged: bool,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn linestring_begin(
&mut self,
tagged: bool,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of LineString processing Read more
sourcefn linestring_end(&mut self, tagged: bool, idx: usize) -> Result<(), GeozeroError>
fn linestring_end(&mut self, tagged: bool, idx: usize) -> Result<(), GeozeroError>
End of LineString processing
sourcefn multilinestring_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn multilinestring_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of MultiLineString processing Read more
sourcefn multilinestring_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn multilinestring_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of MultiLineString processing
sourcefn polygon_begin(
&mut self,
tagged: bool,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn polygon_begin(
&mut self,
tagged: bool,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of Polygon processing Read more
sourcefn polygon_end(&mut self, tagged: bool, idx: usize) -> Result<(), GeozeroError>
fn polygon_end(&mut self, tagged: bool, idx: usize) -> Result<(), GeozeroError>
End of Polygon processing
sourcefn multipolygon_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn multipolygon_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of MultiPolygon processing Read more
fn dimensions(&self) -> CoordDimensions
fn dimensions(&self) -> CoordDimensions
Additional dimensions requested when processing coordinates
fn coordinate(
&mut self,
x: f64,
y: f64,
z: Option<f64>,
m: Option<f64>,
t: Option<f64>,
tm: Option<u64>,
idx: usize
) -> Result<(), GeozeroError>
fn coordinate(
&mut self,
x: f64,
y: f64,
z: Option<f64>,
m: Option<f64>,
t: Option<f64>,
tm: Option<u64>,
idx: usize
) -> Result<(), GeozeroError>
Process coordinate with all requested dimensions
fn empty_point(&mut self, idx: usize) -> Result<(), GeozeroError>
fn empty_point(&mut self, idx: usize) -> Result<(), GeozeroError>
Process empty coordinates, like WKT’s
POINT EMPTYfn multipoint_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn multipoint_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of MultiPoint processing
fn multipolygon_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn multipolygon_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of MultiPolygon processing
fn geometrycollection_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn geometrycollection_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of GeometryCollection processing
fn geometrycollection_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn geometrycollection_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of GeometryCollection processing
fn circularstring_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn circularstring_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of CircularString processing Read more
fn circularstring_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn circularstring_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of CircularString processing
fn compoundcurve_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn compoundcurve_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of CompoundCurve processing Read more
fn compoundcurve_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn compoundcurve_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of CompoundCurve processing
fn curvepolygon_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn curvepolygon_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of CurvePolygon processing Read more
fn curvepolygon_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn curvepolygon_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of CurvePolygon processing
fn multicurve_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn multicurve_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of MultiCurve processing Read more
fn multicurve_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn multicurve_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of MultiCurve processing
fn multisurface_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn multisurface_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of MultiSurface processing Read more
fn multisurface_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn multisurface_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of MultiSurface processing
fn triangle_begin(
&mut self,
tagged: bool,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn triangle_begin(
&mut self,
tagged: bool,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of Triangle processing Read more
fn triangle_end(&mut self, tagged: bool, idx: usize) -> Result<(), GeozeroError>
fn triangle_end(&mut self, tagged: bool, idx: usize) -> Result<(), GeozeroError>
End of Triangle processing
fn polyhedralsurface_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
fn polyhedralsurface_begin(
&mut self,
size: usize,
idx: usize
) -> Result<(), GeozeroError>
Begin of PolyhedralSurface processing Read more
fn polyhedralsurface_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn polyhedralsurface_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of PolyhedralSurface processing
Auto Trait Implementations
impl RefUnwindSafe for IndexProcessor
impl Send for IndexProcessor
impl Sync for IndexProcessor
impl Unpin for IndexProcessor
impl UnwindSafe for IndexProcessor
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read morefn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read morefn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s. Read morefn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s. Read more