Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/HydroniumLabs/h3o
Rust implementation of the H3 geospatial indexing system.
https://github.com/HydroniumLabs/h3o
Last synced: 3 months ago
JSON representation
Rust implementation of the H3 geospatial indexing system.
- Host: GitHub
- URL: https://github.com/HydroniumLabs/h3o
- Owner: HydroniumLabs
- License: bsd-3-clause
- Created: 2022-12-09T14:04:23.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2024-09-30T07:51:48.000Z (4 months ago)
- Last Synced: 2024-10-14T07:19:22.482Z (4 months ago)
- Language: Rust
- Homepage:
- Size: 2.85 MB
- Stars: 316
- Watchers: 11
- Forks: 26
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-georust - h3o - Rust implementation of the H3 geospatial indexing system. (Watchlist)
README
# h3o
[![Crates.io](https://img.shields.io/crates/v/h3o.svg)](https://crates.io/crates/h3o)
[![Docs.rs](https://docs.rs/h3o/badge.svg)](https://docs.rs/h3o)
[![CI Status](https://github.com/HydroniumLabs/h3o/actions/workflows/ci.yml/badge.svg)](https://github.com/HydroniumLabs/h3o/actions)
[![Coverage](https://img.shields.io/codecov/c/github/HydroniumLabs/h3o)](https://app.codecov.io/gh/HydroniumLabs/h3o)
[![License](https://img.shields.io/badge/license-BSD-green)](https://opensource.org/licenses/BSD-3-Clause)[Rust](https://rustlang.org) implementation of the [H3](https://h3geo.org)
geospatial indexing system.## Design
This is not a binding of the reference implementation, but a reimplementation
from scratch.The goals are:
- To be safer/harder to misuse by leveraging the strong typing of Rust.
- To be 100% Rust (no C deps): painless compilation to WASM, easier LTO, …
- To be as fast (or even faster when possible) than the reference library.## Installation
### Cargo
* Install the rust toolchain in order to have cargo installed by following
[this](https://www.rust-lang.org/tools/install) guide.
* run `cargo install h3o`## Usage
```rust
use h3o::{LatLng, Resolution};let coord = LatLng::new(37.769377, -122.388903).expect("valid coord");
let cell = coord.to_cell(Resolution::Nine);
```## Why this name?
Rust is an iron oxide.
A Rust version of H3 is an H3 oxide, in other word $H_3O$ (a.k.a hydronium).
Chemically speaking this is wrong ( $H_3O$ is produced by protonation of
$H_2O$, not oxidation of $H_3$), but ¯\\_(ツ)_/¯## License
[BSD 3-Clause](./LICENSE)