3个版本
0.1.3 | 2022年4月11日 |
---|---|
0.1.2 | 2022年4月10日 |
0.1.1 | 2022年4月10日 |
0.1.0 |
|
#1311 in 算法
12KB
213 行
Google Maps Polyline编码的Rust端口
描述
使用此包在Rust中编码和解码折线。
折线编码是一种有损压缩算法,允许您将一系列坐标存储为单个字符串。点坐标使用有符号值进行编码。
更多信息请参见https://developers.google.com/maps/documentation/utilities/polylinealgorithm。
注意
我与谷歌或谷歌地图没有任何关联。此包是从https://github.com/googlemaps/js-polyline-codec移植过来的。
示例
use polyline_codec::LatLng;
let encoded = "_p~iF~ps|U_ulLnnqC_mqNvxq`@";
assert_eq!(
polyline_codec::decode(encoded, 5).unwrap(),
vec![
LatLng(38.5, -120.2,),
LatLng(40.7, -120.95,),
LatLng(43.252, -126.453,),
]
);
let path = &[(38.5, -120.2), (40.7, -120.95), (43.252, -126.453)];
assert_eq!(
polyline_codec::encode(path, 5).unwrap(),
"_p~iF~ps|U_ulLnnqC_mqNvxq`@",
);
许可证
MIT OR Apache v2.0