This PR adds polylineEncodedMultiPolygon to GeofencingZoneProperties.
All the rings in polylineEncodedMultiPolygon are encoded with Mapbox Polyline
Issue
closes ETU-46620
Motivation: MultiPolygon data can get quite large for mobile network traffic. Using mapbox polyline can reduce this size by ~90%. This is a lossy compression, but only unnecessary decimal info is lost. Precision has been set to 6 decimals.
How the code works: Add the extra polylineEncodedMultiPolygon field on GeofencingZoneProperties, which is the same as the existing coordinates, but where the innermost list of coordinates List<List<Double>> is replaced by an encoded String.
Summary
This PR adds
polylineEncodedMultiPolygon
toGeofencingZoneProperties
. All the rings inpolylineEncodedMultiPolygon
are encoded with Mapbox PolylineIssue
closes ETU-46620 Motivation: MultiPolygon data can get quite large for mobile network traffic. Using mapbox polyline can reduce this size by ~90%. This is a lossy compression, but only unnecessary decimal info is lost. Precision has been set to 6 decimals. How the code works: Add the extra
polylineEncodedMultiPolygon
field onGeofencingZoneProperties
, which is the same as the existing coordinates, but where the innermost list of coordinatesList<List<Double>>
is replaced by an encodedString
.Unit tests
Added
testPolylineEncodedMultiPolygon
Documentation
Description in graphql schema added.