Skip to content

mapbox/mbutil

Folders and files

NameName
Last commit message
Last commit date

Latest commit

544c76e · Apr 4, 2022
Oct 4, 2017
Sep 28, 2017
Jun 6, 2011
May 2, 2017
May 2, 2017
Mar 15, 2011
Mar 15, 2011
Apr 4, 2022
Aug 3, 2017
May 22, 2012
May 3, 2017

MBUtil

MBUtil is a utility for importing and exporting the MBTiles format, typically created with Mapbox TileMill.

Before exporting tiles to disk, see if there's a Mapbox Hosting plan or an open source MBTiles server implementation that works for you - tiles on disk are notoriously difficult to manage.

Build Status

Note well: this project is no longer actively developed. Issues and pull requests will be attended to when possible, but delays should be expected.

Installation

Git checkout (requires git)

git clone https://github.com/mapbox/mbutil.git
cd mbutil
# get usage
./mb-util -h

Then to install the mb-util command globally:

sudo python setup.py install
# then you can run:
mb-util

Python installation (requires easy_install)

easy_install mbutil
mb-util -h

Usage

$ mb-util -h
Usage: mb-util [options] input output

Examples:

    Export an mbtiles file to a directory of files:
    $ mb-util world.mbtiles tiles # tiles must not already exist

    Import a directory of tiles into an mbtiles file:
    $ mb-util tiles world.mbtiles # mbtiles file must not already exist

Options:
  -h, --help            Show this help message and exit
  --scheme=SCHEME       Tiling scheme of the tiles. Default is "xyz" (z/x/y),
                        other options are "tms" which is also z/x/y
                        but uses a flipped y coordinate, and "wms" which replicates
                        the MapServer WMS TileCache directory structure "z/000/000/x/000/000/y.png"''',
                        and "zyx" which is the format vips dzsave --layout google uses.
  --image_format=FORMAT
                        The format of the image tiles, either png, jpg, webp or pbf
  --grid_callback=CALLBACK
                        Option to control JSONP callback for UTFGrid tiles. If
                        grids are not used as JSONP, you can
                        remove callbacks specifying --grid_callback=""
  --do_compression      Do mbtiles compression
  --silent              Dictate whether the operations should run silently


Export an `mbtiles` file to files on the filesystem:

    mb-util World_Light.mbtiles adirectory


Import a directory into a `mbtiles` file

    mb-util directory World_Light.mbtiles

Requirements

  • Python >= 2.6

Metadata

MBUtil imports and exports metadata as JSON, in the root of the tile directory, as a file named metadata.json.

{
    "name": "World Light",
    "description": "A Test Metadata",
    "version": "3"
}

Testing

This project uses nosetests for testing. Install nosetests:

pip install nose

or

easy_install nose

Then run:

nosetests

See Also

License

BSD - see LICENSE.md

Authors

  • Tom MacWright (tmcw)
  • Dane Springmeyer (springmeyer)
  • Mathieu Leplatre (leplatrem)