WMTS to MBTiles utility
NodeJS utility to fetch map tiles from WTMS service to MBTiles format.
Usage
Usage: wmts-to-mbtiles [options]
Options:
--layers List WMTS service layers
--layer [id] Get layer
--output [mbtiles] Output file
--zoom [zoom] Zoom level (default: 10)
--input [url] WMTS service GetCapabilities URL
--bbox [w s e n] Latitude and longitude values, eg. "23.411 59.731 26.850 60.562"
-h, --help display help for command
Example
Fetch default layer from liikennevirasto.fi
and output test.mbtiles
:
wmts-to-mbtiles --input "https://julkinen.traficom.fi/rasteripalvelu/wmts?request=getcapabilities" --layer Traficom:Satamakartat --zoom 5 --output output.mbtiles
Fetch smaller area:
wmts-to-mbtiles --input "https://julkinen.traficom.fi/rasteripalvelu/wmts?request=getcapabilities" --layer Traficom:Satamakartat --bbox "24.89 60.13 24.93 60.15" --zoom 12 --output output.mbtiles
Helper for defining the bbox: http://boundingbox.klokantech.com/
List layers in {layer id} :: {layer name}
format:
wmts-to-mbtiles --input "https://julkinen.traficom.fi/rasteripalvelu/wmts?request=getcapabilities" --layers
Finnish coastal nautical charts:
Check out https://github.com/vokkim/rannikkokartat-mbtiles
Preview result
Install mbview:
npm install -g mbview
Get a Mapbox access token for the basemap and export MAPBOX_ACCESS_TOKEN=...
Run mbview
:
mbview --port 4999 test.mbtiles
Generate zoom levels
- Install GDAL Complete (> 2.1)
- For Mac: http://www.kyngchaos.com/software/frameworks
echo 'export PATH=/Library/Frameworks/GDAL.framework/Programs:$PATH' >> ~/.bash_profile
-
Use gdaladdo to generate zoom levels for existing mbtiles file:
gdaladdo -r cubic test.mbtiles 2 4 8 16 32
Use cubic
sampling for better results.
License
MIT