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: GeoWriter§geometries: Vec<IndexedGeometry<f64>>§properties: Option<HashMap<String, String>>Implementations§
source§impl 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§
source§impl Default for IndexProcessor
impl Default for IndexProcessor
source§impl FeatureProcessor for IndexProcessor
impl FeatureProcessor for IndexProcessor
source§fn dataset_begin(&mut self, _name: Option<&str>) -> Result<(), GeozeroError>
fn dataset_begin(&mut self, _name: Option<&str>) -> Result<(), GeozeroError>
Begin of dataset processing.
source§fn dataset_end(&mut self) -> Result<(), GeozeroError>
fn dataset_end(&mut self) -> Result<(), GeozeroError>
End of dataset processing.
source§fn feature_begin(&mut self, _idx: u64) -> Result<(), GeozeroError>
fn feature_begin(&mut self, _idx: u64) -> Result<(), GeozeroError>
Begin of feature processing.
source§fn properties_begin(&mut self) -> Result<(), GeozeroError>
fn properties_begin(&mut self) -> Result<(), GeozeroError>
Begin of feature property processing.
source§fn properties_end(&mut self) -> Result<(), GeozeroError>
fn properties_end(&mut self) -> Result<(), GeozeroError>
End of feature property processing.
source§fn geometry_begin(&mut self) -> Result<(), GeozeroError>
fn geometry_begin(&mut self) -> Result<(), GeozeroError>
Begin of feature geometry processing.
source§fn geometry_end(&mut self) -> Result<(), GeozeroError>
fn geometry_end(&mut self) -> Result<(), GeozeroError>
End of feature geometry processing.
source§impl GeomProcessor for IndexProcessor
impl GeomProcessor for IndexProcessor
source§fn 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
source§fn point_begin(&mut self, idx: usize) -> Result<(), GeozeroError>
fn point_begin(&mut self, idx: usize) -> Result<(), GeozeroError>
Begin of Point processing Read more
source§fn 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
source§fn 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 moresource§fn linestring_end(
&mut self,
tagged: bool,
idx: usize
) -> Result<(), GeozeroError>
fn linestring_end( &mut self, tagged: bool, idx: usize ) -> Result<(), GeozeroError>
End of
LineString processingsource§fn 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 moresource§fn multilinestring_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn multilinestring_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of
MultiLineString processingsource§fn 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
source§fn 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
source§fn 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 moresource§fn multipolygon_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn multipolygon_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of
MultiPolygon processing§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 EMPTY§fn multipoint_end(&mut self, idx: usize) -> Result<(), GeozeroError>
fn multipoint_end(&mut self, idx: usize) -> Result<(), GeozeroError>
End of MultiPoint 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§
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
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
§fn into_any(self: Box<T, Global>) -> Box<dyn Any, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any, 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.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.§fn 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.§fn 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.