rozklad/heremaps-flexible-polyline

Flexible Polyline 编码的 PHP 实现:一系列坐标对或三重坐标的损失压缩表示

1.0.3 2021-04-15 06:38 UTC

This package is auto-updated.

Last update: 2024-09-15 14:02:39 UTC


README

composer test

使用说明

解码

FlexiblePolyline::decode(string $encoded): array

$data = FlexiblePolyline::decode('BlBoz5xJ67i1BU1B7PUzIhaUxL7YU');
/** $data:
[
    'precision' => 5,
    'thirdDim' => 2,
    'thirdDimPrecision' => 0,
    'polyline' => [
        [50.10228, 8.69821, 10],
        [50.10201, 8.69567, 20],
        [50.10063, 8.6915, 30],
        [50.09878, 8.68752, 40]
    ]
]
*/

编码

FlexiblePolyline::encode(array $coordinates [, int $precision = null, int $thirdDim = null, int $thirdDimPrecision = 0]): string

$encoded = FlexiblePolyline::encode([
    [50.10228, 8.69821, 10],
    [50.10201, 8.69567, 20],
    [50.10063, 8.6915, 30],
    [50.09878, 8.68752, 40]
], 5, 2, 0);
/** $encoded:
BlBoz5xJ67i1BU1B7PUzIhaUxL7YU
*/

第三维度

FlexiblePolyline::getThirdDimension(string $encoded): int

$thirdDimension = FlexiblePolyline::getThirdDimension('BVoz5xJ67i1BU')
/** $thirdDimension:
1
*/