Rust libraries for the H3 geospatial indexing system.
In january 2023 the h3o library - a port of H3 to rust - has been released. This brings many benefits including type safety, compilation to WASM and performance improvements (example: issue comparing raster to h3 conversion).
As a result these libraries will most certainly only receive dependency upgrades in the future. Some parts will maybe be ported to h3o, like the raster to H3 conversion already was.
This repository consists of multiple crates:
High-level rust API for H3.
This crate builds on-top the official C library. The recently released h3o project provides an implementation of H3 in pure rust.
bindgen-generated bindings for the statically linked libh3 C library.
Integration with the ndarray crate to generate H3 cells from raster data (using gdal, ...)
Graph algorithms on edges of the H3 spatial indexing system.
Integration of the h3 geospatial indexing system with polars dataframes by providing extension traits
to UInt64Chunked
and DataFrame
.
Python bindings for parts of the functionalities are available in the h3ronpy
extension now located in an own repository.
For an overview of some features complementary to libh3 please see the README of the python bindings.
Well, coming up with a good name for a project while avoiding naming conflicts is hard. On the other hand are animal-based names always pretty easy to remember.
How to pronounce it? I got no idea - probably like the heron bird family.
Some data in the data
directory is derived from OpenStreetMap and as such is copyright by the OpenStreetMap contributors. For
the OSM license see OSMs Copyright and License page.