3个版本
0.1.2 | 2024年4月22日 |
---|---|
0.1.1 | 2024年4月3日 |
0.1.0 | 2024年3月27日 |
#664 in 算法
55KB
1K SLoC
gridish
一个用于处理英国和爱尔兰国家网格(OSGB和OSI)的Rust库。它提供了一个简单的接口,用于将有效的网格参考转换为东西坐标/南北坐标,反之亦然,以及重新计算网格参考到新精度的功能。此crate故意不提供在不同坐标系之间转换的功能,因为已经存在几个库可以执行此操作;它仅存在于填补东西坐标/南北坐标和它们的文本表示之间的差距。
示例
use gridish::{OSGB, Precision};
use geo_types::coord;
// Parse grid reference from a 6 figure (100m) string.
let gridref_100m: OSGB = "SO892437".parse().unwrap();
// Recalculate grid reference to 2 figures (10km)
let gridref_10k = gridref_100m.recalculate(Precision::_10Km);
assert_eq!("SO84".to_string(), gridref_10k.to_string());
// Get the eastings / northings at the gridref's south west corner
assert_eq!(gridref.sw(), coord! {x: 389_200, y: 243_700 }.into());
功能
serde
:提供使用serde进行(反)序列化的支持。tetrads
:提供对DINTY格式下的四元组网格参考的支持,这在生物调查中常用。
use gridish::{OSGB, Precision};
use geo_types::coord;
// Parse grid reference from a 6 figure (100m) string.
let gridref_2k: OSGB = "SN24R".parse().unwrap();
// Get the eastings / northings at the gridref's south west corner
assert_eq!(gridref_2k.sw(), coord! {x: 226_000, y: 242_000 }.into());
许可证
以下任一许可证下许可:
- Apache许可证第2版 (LICENSE-APACHE或https://apache.ac.cn/licenses/LICENSE-2.0)
- MIT许可证 (LICENSE-MIT或http://opensource.org/licenses/MIT)
任选其一。
贡献
除非你明确声明,否则根据Apache-2.0许可证定义的任何有意提交以包含在你的作品中的贡献,将按照上述方式双许可,不附加任何额外的条款或条件。
依赖
~0.7–1MB
~18K SLoC