TrackEngine/third_party/vtzero
2026-02-26 13:00:32 +01:00
..
cmake First Commit 2026-02-26 13:00:32 +01:00
doc First Commit 2026-02-26 13:00:32 +01:00
examples First Commit 2026-02-26 13:00:32 +01:00
include/vtzero First Commit 2026-02-26 13:00:32 +01:00
include-external First Commit 2026-02-26 13:00:32 +01:00
test First Commit 2026-02-26 13:00:32 +01:00
.clang-tidy First Commit 2026-02-26 13:00:32 +01:00
.gitignore First Commit 2026-02-26 13:00:32 +01:00
.gitmodules First Commit 2026-02-26 13:00:32 +01:00
.travis.yml First Commit 2026-02-26 13:00:32 +01:00
.ycm_extra_conf.py First Commit 2026-02-26 13:00:32 +01:00
appveyor.yml First Commit 2026-02-26 13:00:32 +01:00
build-appveyor.bat First Commit 2026-02-26 13:00:32 +01:00
build-msys2.bat First Commit 2026-02-26 13:00:32 +01:00
CHANGELOG.md First Commit 2026-02-26 13:00:32 +01:00
CMakeLists.txt First Commit 2026-02-26 13:00:32 +01:00
codecov.yml First Commit 2026-02-26 13:00:32 +01:00
CONTRIBUTING.md First Commit 2026-02-26 13:00:32 +01:00
EXTERNAL_LICENSES.txt First Commit 2026-02-26 13:00:32 +01:00
LICENSE First Commit 2026-02-26 13:00:32 +01:00
README.md First Commit 2026-02-26 13:00:32 +01:00

vtzero

Tiny and fast vector tile decoder and encoder in C++.

Implements the Mapbox Vector Tile Specification 2.x.

Build Status Appveyor Build Status Coverage Status

Depends

  • C++11 compiler (GCC 4.8 or higher, clang 3.5 or higher, ...)
  • CMake
  • Protozero version >= 1.7.0

Build

First clone protozero:

git clone git@github.com:mapbox/protozero.git

Then clone vtzero beside protozero. The vtzero build system will, among several places, look for protozero at ../protozero. (If you would like to use protozero from a different path you can set PROTOZERO_INCLUDE_DIR in the CMake configuration step.)

Then, inside the vtzero directory do:

git submodule update --init

Finally, to build the examples and tests do:

mkdir build
cd build
cmake ..
make

Call ctest to run the tests.

Examples

Several examples are provided to show usage of the library.

Call

examples/vtzero-create

to create test tile named test.mvt.

Call

examples/vtzero-show TILE-FILE

to show the contents of TILE-FILE.

You can use

examples/vtzero-check TILE-FILE

to check vector tile for validity.

Docs

Extensive documentation is available:

Make sure to read all of it before using vtzero. Vtzero isn't the simplest library to use, because it always chooses performance over ease of use.

If Doxygen is installed on your system, the build process will automatically create the API docs for you. The results will be in your build directory under doc/html.

Authors

Jochen Topf (jochen@topf.org), Dane Springmeyer (dane@mapbox.com)