This project is deprecated. Please check here-polyline-converter
This is Python extension of the Flexible Polyline
codec library to support the HERE polyline format used by
HERE Places (Search) API
for the compressedRoute
requests parameter.
Note that the HERE Places (Search) API is in maintenance. This Python package can be used to test applications being migrated to the newer HERE Geocoding & Search API.
$ pip install python-flexpolyline-pbapi
>>> reencode_pbapi_to_flex(here_polyline_string)
Transforms a HERE polyline string into a flexible polyline string.
The HERE Polyline segments width changes are ignored: The resulting corridor will be of constant width, expressed
in HERE geocoding & Search API as a specific request
parameter width
.
>>> encode_pbapi(iterable)
Encodes a list (or iterator) of coordinates to the corresponding HERE polyline string representation.
Coordinate order is (lat, lng[, width])
.
>>> decode_pbapi(here_polyline_string)
Decodes a HERE polyline string into an array of coordinates (lat, lng[, width])
.
>>> encode_pbapi(iterable)
Note that width
is expected to be one of DW
, HW
, CW
.
>>> import flexpolyline_pbapi as fp
>>> here_polyline = "oz5xJ67i1B1B7PzIhaxL7Y"
>>> flexible_polyline = fp.reencode_pbapi_to_flex(here_polyline)
>>> flexible_polyline
'BFoz5xJ67i1B1B7PzIhaxL7Y'
>>> points = [ (50.1022829, 8.6982122), (50.1020076, 8.6956695), (50.1006313, 8.6914960), (50.0987800, 8.6875156) ]
>>> fp.encode_pbapi(points)
'oz5xJ67i1B1B7PzIhaxL7Y'
>>> here_polyline = "oz5xJ67i1B.C1B7PzIha.DxL7Y"
>>> fp.decode_pbapi(here_polyline)
[(50.10228, 8.69821, 'CW'), (50.10201, 8.69567), (50.10063, 8.6915, 'DW'), (50.09878, 8.68752)]
Copyright (C) 2019 HERE Europe B.V.
See the LICENSE file in the root of this project for license details.