pub struct Layer { /* private fields */ }Expand description
A layer is a set of related features in a tile.
§Example
use mvt::Tile;
let mut tile = Tile::new(4096);
let layer = tile.create_layer("First Layer");
// ...
// set up the layer
// ...Implementations§
source§impl Layer
impl Layer
sourcepub fn num_features(&self) -> usize
pub fn num_features(&self) -> usize
Get number of features (count).
sourcepub fn into_feature(self, geom_data: GeomData) -> Feature
pub fn into_feature(self, geom_data: GeomData) -> Feature
Create a new feature, giving it ownership of the layer.
geom_dataGeometry data (consumed by this method).
Examples found in repository?
examples/simple.rs (line 14)
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
fn main() -> Result<(), Error> {
let mut tile = Tile::new(4096);
let layer = tile.create_layer("First Layer");
// NOTE: normally, the Transform would come from MapGrid::tile_transform
let b = GeomEncoder::new(GeomType::Linestring)
.point(0.0, 0.0)?
.point(1024.0, 0.0)?
.point(1024.0, 2048.0)?
.point(2048.0, 2048.0)?
.point(2048.0, 4096.0)?
.encode()?;
let mut feature = layer.into_feature(b);
feature.set_id(1);
feature.add_tag_string("key", "value");
let layer = feature.into_layer();
tile.add_layer(layer)?;
let data = tile.to_bytes()?;
println!("encoded {} bytes: {:?}", data.len(), data);
Ok(())
}Trait Implementations§
Auto Trait Implementations§
impl !Freeze for Layer
impl RefUnwindSafe for Layer
impl Send for Layer
impl Sync for Layer
impl Unpin for Layer
impl UnwindSafe for Layer
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