Crate tile_grid

Source
Expand description

A library for using OGC TileMatrixSets (TMS).

§Load tile set matrix and get bounds of a tile

use tile_grid::{tms, BoundingBox, Xyz};

let tms = tms().lookup("WebMercatorQuad").unwrap();

// Get the bounds for tile Z=4, X=10, Y=10 in the input projection
let bounds = tms.xy_bounds(&Xyz::new(10, 10, 4));
assert_eq!(
    bounds,
    BoundingBox::new(
        5009377.085697308,
        -7514065.628545959,
        7514065.628545959,
        -5009377.085697308
    )
);

// Get the bounds for tile Z=4, X=10, Y=10 in LatLon (WGS84)
let bounds = tms.bounds(&Xyz::new(10, 10, 4)).unwrap();
assert_eq!(
    bounds,
    BoundingBox::new(45.0, -55.77657301866769, 67.5, -40.97989806962013)
);

§Find tile for lat/lon

let tile = tms.tile(159.31, -42.0, 4).unwrap();
assert_eq!(tile, Xyz::new(15, 10, 4));

// Or using coordinates in input CRS
let tile = tms.xy_tile(17734308.1, -5160979.4, 4);
assert_eq!(tile, Xyz::new(15, 10, 4));

Structs§

BoundingBox
A xmin,ymin,xmax,ymax coordinates tuple.
Coords
A x,y Coordinates pair.
Extent
Geographic extent
ExtentInt
Min and max grid cell numbers
Grid
Tile grid
GridIterator
Level-by-level iterator
TileMatrixSets
Registry of tile matrix sets
Tms
Tile Matrix Set API.
Xyz
TileMatrixSet X,Y,Z tile indices.
XyzIterator
Level-by-level iterator

Enums§

Error
Matrix
Origin
Grid origin
RegistryError
TileMatrixSetError
TmsError
Unit
Grid units
ZoomLevelStrategy

Constants§

DEFAULT_BBOX_PREC

Traits§

TileIterator
TileMatrixSetOps

Functions§

bbox_to_feature
Create a GeoJSON feature from a bbox.
extent_wgs84_to_merc
Projected extent
meters_per_unit
Coefficient to convert the coordinate reference system (CRS) units into meters (metersPerUnit).
point_in_bbox
Check if a point is in a bounding box.
tms
Global registry of tile matrix sets

Type Aliases§

Result