Skip to main content

Construct and use map tile grids (a.k.a TileMatrixSet / TMS).

Project description

Morecantile

Construct and use map tile grids (a.k.a TileMatrixSet / TMS).

Test Coverage Package version Downloads License


Documentation: https://developmentseed.org/morecantile/

Source Code: https://github.com/developmentseed/morecantile


Morecantile is like mercantile (the best tool to work with Web Mercator tile indexes), but with support for other TileMatrixSet grids.

Morecantile follows the OGC Two Dimensional Tile Matrix Set specification 2.0 found in https://docs.ogc.org/is/17-083r4/17-083r4.html

Morecantile Version OGC Specification Version Link
4.0 2.0 https://docs.ogc.org/is/17-083r4/17-083r4.html
3.0 and earlier 1.0 http://docs.opengeospatial.org/is/17-083r2/17-083r2.html

Note: Variable matrix width tile set are not supported.

Install

$ python -m pip install -U pip
$ python -m pip install morecantile

# Or install from source:
$ python -m pip install -U pip
$ python -m pip install git+https://github.com/developmentseed/morecantile.git

Usage

import morecantile

tms = morecantile.tms.get("WebMercatorQuad")

# Get TMS bounding box
print(tms.xy_bbox)
>>> BoundingBox(
    left=-20037508.342789244,
    bottom=-20037508.34278919,
    right=20037508.34278919,
    top=20037508.342789244,
)

# Get the bounds for tile Z=4, X=10, Y=10 in the TMS's CRS (e.g epsg:3857)
print(tms.xy_bounds(morecantile.Tile(10, 10, 4)))
>>> BoundingBox(
    left=5009377.085697308,
    bottom=-7514065.628545959,
    right=7514065.628545959,
    top=-5009377.085697308,
)

# Get the bounds for tile Z=4, X=10, Y=10 in Geographic CRS (e.g epsg:4326)
print(tms.bounds(morecantile.Tile(10, 10, 4)))
>>> BoundingBox(
    left=44.999999999999964,
    bottom=-55.776573018667634,
    right=67.4999999999999,
    top=-40.97989806962009,
)

More info can be found at https://developmentseed.org/morecantile/usage/

Defaults Grids

morecantile provides a set of default TMS grids:

  • CanadianNAD83_LCC: Lambert conformal conic NAD83 for Canada - EPSG:3978
  • EuropeanETRS89_LAEAQuad: ETRS89-extended / LAEA Europe - EPGS:3035
  • LINZAntarticaMapTilegrid: LINZ Antarctic Map Tile Grid (Ross Sea Region) - EPSG:5482
  • NZTM2000Quad: LINZ NZTM2000 Map Tile Grid - EPSG:2193
  • UPSAntarcticWGS84Quad: Universal Polar Stereographic WGS 84 Quad for Antarctic - EPSG:5042
  • UPSArcticWGS84Quad: Universal Polar Stereographic WGS 84 Quad for Arctic - EPSG:5041
  • UTM31WGS84Quad: Example of UTM grid - EPSG:32631
  • WebMercatorQuad: Spherical Mercator - EPGS:3857 (default grid for Web Mercator based maps)
  • WGS1984Quad: EPSG:4326 for the World - EPGS:4326 (WGS84)
  • WorldCRS84Quad: CRS84 for the World
  • WorldMercatorWGS84Quad: Elliptical Mercator projection - EPGS:3395

ref: https://schemas.opengis.net/tms/2.0/json/examples/tilematrixset/

Implementations

  • rio-tiler: Create tile from raster using Morecantile TMS.
  • titiler: A modern dynamic tile server built on top of FastAPI and Rasterio/GDAL.
  • tipg: OGC Features and Tiles API.
  • planetcantile: Tile matrix sets for other planets.
  • supermorecado: Extend the functionality of morecantile with additional commands.

Changes

See CHANGES.md.

Contribution & Development

See CONTRIBUTING.md

License

See LICENSE

Authors

Created by Development Seed

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

morecantile-4.2.1.tar.gz (31.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

morecantile-4.2.1-py3-none-any.whl (36.6 kB view details)

Uploaded Python 3

File details

Details for the file morecantile-4.2.1.tar.gz.

File metadata

  • Download URL: morecantile-4.2.1.tar.gz
  • Upload date:
  • Size: 31.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.31.0

File hashes

Hashes for morecantile-4.2.1.tar.gz
Algorithm Hash digest
SHA256 1230e75c36a36980543a37dadb8661050d49d43b4dd8458b89b2e31acc0d4f33
MD5 02c278ba81c427f8e03f75d014f70532
BLAKE2b-256 b03c65958af2b9ef2e3f02f35b0091c7b0052348b4b1f3c1a101af71d311d46d

See more details on using hashes here.

File details

Details for the file morecantile-4.2.1-py3-none-any.whl.

File metadata

  • Download URL: morecantile-4.2.1-py3-none-any.whl
  • Upload date:
  • Size: 36.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.31.0

File hashes

Hashes for morecantile-4.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 37d990022998b71da4c14a2563f6eb33f30d8e0a68c031519a5208291870695c
MD5 6136f1413e5699750540e9103504e6cb
BLAKE2b-256 12c9c0095b8bc4e1e94ea202082d41dd44d516c26fd37647afd0aa438ed7689a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page