Awesome
mapnik-vector-tile
A Mapnik implemention of Mapbox Vector Tile specification.
Provides C++ headers that support rendering geodata into vector tiles and rendering vector tiles into images.
Depends
Implementation details
Vector tiles in this code represent a direct serialization of Mapnik layers optimized for space efficient storage and fast deserialization. For those familiar with the Mapnik API vector tiles here can be considered a named array of mapnik::featureset_ptr
whose geometries have been pre-tiled.
For more details see vector-tile-spec.
Building from source
If you do not need to build against an external mapnik, just type:
make
This will download all deps (including Mapnik) and compile against them.
To build and test in debug mode do:
make debug test-debug
If you have Mapnik, libprotobuf, and all the Mapnik deps already installed on your system then you can build against them with:
make release_base
Note: SSE optimizations are enabled by default. If you want to turn them off do:
SSE_MATH=false make
If building against an external Mapnik please know that Mapnik Vector Tile does not currently support Mapnik 3.1.x.
- mapnik-vector-tile >=1.4.x depends on Mapnik >=v3.0.14
- mapnik-vector-tile >=1.0.x depends on Mapnik >=v3.0.11
- mapnik-vector-tile 1.0.0 to 0.7.x depends on Mapnik v3.0.x (until 3.0.0 is released this means latest mapnik HEAD)
- mapnik-vector-tile 0.6.x and previous work with Mapnik v2.2.x or v2.3.x
- You will need
libmapnik
andmapnik-config
available - Protobuf:
libprotobuf
andprotoc
Tests
Run the C++ tests like:
make test
Examples
C++
See examples in examples/c++