UNPKG

wmts-to-mbtiles

Version:

Save tiles from WMTS service to MBTiles format

45 lines (39 loc) 1.07 kB
#!/usr/bin/env node const _ = require('lodash') const program = require('commander') const Promise = require('bluebird') const TmsToMbtiles = require('./src/tms-to-mbtiles') const cmd = program .option('--output [mbtiles]', 'Output file') .option('--zoom [zoom]', 'Zoom level') .option('--input [url]', 'tilemap URL') .option('--bbox [w s e n]', 'Latitude and longitude values, eg. "23.411 59.731 26.850 60.562"') .option('--token [token]', 'Optional token for tilemap URL') .parse(process.argv) if (!cmd.output) { throw 'Missing output file!' } if (!cmd.bbox) { throw 'Missing BBOX!' } if (!cmd.input) { throw 'Missing input URL!' } const {lat, long} = cmd const layer = cmd.layer const bbox = cmd.bbox.split(' ').map(parseFloat) console.log('Requested bounds:', bbox) const zoom = parseInt(cmd.zoom) TmsToMbtiles({ mbtilesFile: cmd.output, tilemapUrl: cmd.input, token: cmd.token, layer, zoom, bbox, headers: { 'Referer': 'https://webapp.navionics.com/', 'Origin': 'https://webapp.navionics.com', 'User-Agent': '' } })