4个版本 (2个破坏性版本)
0.3.1 | 2024年6月6日 |
---|---|
0.3.0 | 2024年1月19日 |
0.2.0 | 2024年1月11日 |
0.1.0 | 2021年8月29日 |
#119 in 地理空间
在 2 crates 中使用
43KB
1K SLoC
Rosewood
基于文件的RTree,用于地理空间数据,如 Point
、Linestring
和 Polygon
。
编写
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
可以具有相关数据,这些数据必须实现来自 serde 的 Serialize
/ Deserialize
特性。在上面的例子中,这是 String
。
依赖关系
~1–1.7MB
~37K SLoC