6 releases
new 0.3.3 | Nov 21, 2024 |
---|---|
0.3.2 | Sep 30, 2024 |
0.3.1 | Jun 6, 2024 |
0.3.0 | Jan 19, 2024 |
0.1.0 | Aug 29, 2021 |
#137 in Geospatial
Used in 2 crates
44KB
1K
SLoC
Rosewood
A file-based RTree for geospatial data, such as Point
s, Linestring
s and
Polygon
s.
Writing
use rosewood::{BulkWriter, gis::Points};
fn main() -> Result<(), Box<dyn std::error::Error>> {
let mut w = BulkWriter::new("points.loam")?;
let mut a = Points::new("point A".to_string());
a.push((5.0, 1.0));
let mut b = Points::new("point B".to_string());
b.push((3.0, 7.3));
w.push(&a)?;
w.push(&b)?;
w.finish()?;
Ok(())
}
GisData
can have associated data, which must implement the Serialize
/ Deserialize
traits from serde. In the example above, this is String
.
Dependencies
~0.9–1.6MB
~35K SLoC