c++ geobuf with python binding
Project description
geobuf
C++ port of https://github.com/mapbox/geobuf, and with python binding.
Python binding
Install
# from pypi
pip install pybind11_geobuf
# from source
git clone --recursive https://github.com/cubao/geobuf-cpp
pip install ./geobuf-cpp
# or just
pip install git+https://github.com/cubao/geobuf-cpp.git
(you can build wheels for later reuse by pip wheel git+https://github.com/cubao/geobuf-cpp.git
)
See tests/test_geobuf.py
for usage.
Dependencies
All dependencies are header-only, including:
rapidjson
for JSON read/writegeojson-cpp
for GeoJSON representation- dependencies
- forked from mapbox, with some modifications to
geojson-cpp
andgeometry.hpp
- added
z
to mapbox::geojson::point - added
custom_properties
to geometry/feature/feature_collection
- added
protozero
for protobuf encoding/decoding
dbg-macro
and doctest
are dev dependencies.
Simple roundtrip tests pass, have identical results to JS implementation.
Will be throughly tested later.
Development
pull all code:
git submodule update --init --recursive
compile & test:
make build
make test_all
make roundtrip_test_js
make roundtrip_test_cpp
TODO:
- diff js/py/c++
- fix precision test
- python binding
- wasm binding
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pybind11_geobuf-0.0.1.tar.gz
(3.2 MB
view hashes)
Built Distributions
Close
Hashes for pybind11_geobuf-0.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 18600c60144daf0dc307bcd0602c9fa6c6f10e28bf914c866531fcf3f6f60d2e |
|
MD5 | 9e594bae1fb33d7d5be39ac1a3093239 |
|
BLAKE2b-256 | 8b735cd21a47d38871a666707963e46c0ee06d687b19139005bdda94d9a5724f |
Close
Hashes for pybind11_geobuf-0.0.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 91729618834751c78309ee98344f7c965b777278bc153104a4f98418d3fac1ae |
|
MD5 | 77160e8185bbe85946258f37afd03531 |
|
BLAKE2b-256 | 284ef3bfad91db518b1cefdc2a0a00048be562f4f8c74b730896bb7d38c0f3c5 |
Close
Hashes for pybind11_geobuf-0.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 35d39967f3f430cff85360998fc82a01cd1fd3f47dc13716ecc325612e8ec72c |
|
MD5 | c45a5899eba4640a01d2283c796a15a9 |
|
BLAKE2b-256 | f5520fced187b94f12a47632bd6a681aed24497352db8d037711a752ac64f6aa |
Close
Hashes for pybind11_geobuf-0.0.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 55694fc2f0a033692b9e3f28eae807d360647a4163e079844630fdb3b685e146 |
|
MD5 | 731b628232a91c2ef9d6702bffb3e513 |
|
BLAKE2b-256 | 06e146ddc4a107690f43b439c8b671bbb81c63e274bf42cb734002b80a4dc9fc |
Close
Hashes for pybind11_geobuf-0.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 96af1c7f326ba093e84c0c92e5f3ad2570ac36c85ca7a70b8a19330138a47688 |
|
MD5 | 724a7478a0fb421b9a23e99a0befa56e |
|
BLAKE2b-256 | 358b5251d7ab44656b9b9a51fbc544889c46e8fef1fbac38cfc373110be6842d |
Close
Hashes for pybind11_geobuf-0.0.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ecde4b4e4253edcbb9eee5dd0cc685eb9e81c6321cfaf660c0100ce489be92ea |
|
MD5 | 9e41207b0ec404fb73e8c1663180af43 |
|
BLAKE2b-256 | e644dc3cecdb3c8b79b87d0325e220c0ba8b605f14c511068e9807ffcc55fa0d |
Close
Hashes for pybind11_geobuf-0.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f40284123e2a8a8093db934c261a0ac8a317de8d8f4bd17c322cea4eb411fa91 |
|
MD5 | 363352f8459d2199e7ed0dccfdedf8e9 |
|
BLAKE2b-256 | 2194abda93a14d387cff8a54c09ea5f951fc361291de78825ddb79c253e273bc |
Close
Hashes for pybind11_geobuf-0.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 04387b5250c398861a6a7114f93e2922b2ab87b21c8e122191253e628f0777e3 |
|
MD5 | 92208b75c57541c5228a3373fb3aa8f8 |
|
BLAKE2b-256 | ff2180b72b110875bb087a5e2d25b2e0b07d0ba64bba2dc51324f9e5b7e71545 |