A Go-based tile downloader that saves to deduplicated files.
./bin/build -h
Usage of ./bin/build:
-bounds string
Comma-separated bounding box in south,west,north,east format. Defaults to the whole world. (default "-90.0,-180.0,90.0,180.0")
-bucket string
(For metatile, tapalcatl2 generator) The name of the S3 bucket to request t2 archives from.
-cpuprofile string
Enables CPU profiling. Saves the dump to the given path.
-dsn string
Path, or DSN string, to output files.
-ensure-gzip
Ensure tile data is gzipped. Only applies to XYZ tiles. (default true)
-file-transport-root string
The root directory for tiles if -url-template defines a file:// URL scheme
-generator string
Which tile fetcher to use. Options are xyz, metatile, tapalcatl2. (default "xyz")
-inverted-y
Invert the Y-value of tiles to match the TMS (as opposed to ZXY) tile format.
-layer-name string
(For metatile, tapalcatl2 generator) The layer name to use for hash building.
-materialized-zooms string
(For tapalcatl2 generator) Specifies the materialized zooms for t2 archives.
-output-mode string
Valid modes are: disk, mbtiles. (default "mbtiles")
-path-template string
(For metatile, tapalcatl2 generator) The template to use for the path part of the S3 path to the t2 archive.
-timeout int
HTTP client timeout for tile requests. (default 60)
-url-template string
(For xyz generator) URL template to make tile requests with.
-workers int
Number of tile fetch workers to use. (default 25)
-zooms string
Comma-separated list of zoom levels. (default "0,1,2,3,4,5,6,7,8,9,10")
Required arguments:
-url-template
: template for an HTTP request per tile. Use {z}
for zoom, {x}
for x or column, and {y}
for y or row.Required arguments:
-bucket
: specify the S3 bucket to fetch from-layer-name
: a string name for the layer part of the path template.-path-template
: template for the path part of the request to S3. Use {z}
for zoom, {x}
for x or column, {y}
for y or row, {l}
for layer name, and {h}
for the hash prefix (see below).The "hash prefix" is used by the Tilezen tiler to spread the load of tile fetches across S3 shards. In practice, it is the first 5 characters of the MD5 sum of the evaluated template string {zoom}/{x}/{y}.zip
(e.g. 12/242/533.zip
).
The following tile "outputter" are supported, as defined by the -mode
flag:
Clone tiles to a local directory. Valid -dsn
strings must be in the form of:
-dsn 'root={PATH_TO_DIRECTORY_ROOT} format={TILE_FORMAT}'
Clone tiles to a MBTiles (SQLite) database. Valid -dsn
strings must be in the form of:
-dsn '{PATH_TO_MBTILES_DATABASE}'