Polyline is a lossy compression algorithm that allows you to store a series of coordinates as a single string.
use polyline; use geo_types::line_string; let coord = line_string![(x: -120.2, y: 38.5), (x: -120.95, y: 40.7), (x: -126.453, y: 43.252)]; let output = "_p~iF~ps|U_ulLnnqC_mqNvxq`@"; let result = polyline::encode_coordinates(coord, 5).unwrap(); assert_eq!(result, output)
This crate uses
LineString types from the
geo-types crate, which encodes coordinates
(x, y) order. The Polyline algorithm and first-party documentation assumes the opposite coordinate order.
It is thus advisable to pay careful attention to the order of the coordinates you use for encoding and decoding.
Decodes a Google Encoded Polyline.
Encodes a Google Encoded Polyline.