Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mapbox/mapnik-vector-tile
Mapnik implemention of Mapbox Vector Tile specification
https://github.com/mapbox/mapnik-vector-tile
Last synced: 25 days ago
JSON representation
Mapnik implemention of Mapbox Vector Tile specification
- Host: GitHub
- URL: https://github.com/mapbox/mapnik-vector-tile
- Owner: mapbox
- License: bsd-3-clause
- Created: 2013-04-12T21:16:46.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2022-08-22T09:26:22.000Z (over 2 years ago)
- Last Synced: 2024-05-17T14:34:15.687Z (7 months ago)
- Language: C++
- Homepage:
- Size: 5.75 MB
- Stars: 550
- Watchers: 159
- Forks: 116
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-vector-tiles - mapnik-vector-tile - C++ vector tile read/write implementation on top of Mapnik. (Parsers & Generators)
README
## mapnik-vector-tile
A Mapnik implemention of [Mapbox Vector Tile specification](https://github.com/mapbox/vector-tile-spec).
Provides C++ headers that support rendering geodata into vector tiles and rendering vector tiles into images.
- Master: [![Build Status](https://travis-ci.com/mapbox/mapnik-vector-tile.svg?branch=master)](https://travis-ci.com/mapbox/mapnik-vector-tile)
- 0.6.x series: [![Build Status](https://secure.travis-ci.com/mapbox/mapnik-vector-tile.svg?branch=0.6.x)](http://travis-ci.com/mapbox/mapnik-vector-tile)[![codecov](https://codecov.io/gh/mapbox/mapnik-vector-tile/branch/master/graph/badge.svg)](https://codecov.io/gh/mapbox/mapnik-vector-tile)
## 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](https://github.com/mapbox/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` and `mapnik-config` available
- Protobuf: `libprotobuf` and `protoc`## Tests
Run the C++ tests like:
make test
## Examples
### C++
See examples in examples/c++
## Authors
- [Artem Pavlenko](https://github.com/artemp)
- [Dane Springmeyer](https://github.com/springmeyer)
- [Konstantin Käfer](https://github.com/kkaefer)## See also
- http://mike.teczno.com/notes/postgreslessness-mapnik-vectiles.html
- https://github.com/jones139/ceramic
- https://github.com/opensciencemap/vtm