Рассчитать расстояние отрезка дороги - PullRequest
0 голосов
/ 29 октября 2018

Я хочу рассчитать расстояние отрезка дороги. У меня есть данные сегмента как многоугольник. Как это сделать с помощью JavaScript?

Пример сегмента изображения enter image description here

Я знаю, что вычисление расстояния между двумя точками возможно с помощью модуля geolib npm. Но я хочу вычислить расстояние отрезка полигона.

geolib.getDistance(
    {latitude: 38.837409, longitude: -106.147765},
    {latitude: 38.840000, longitude: -106.138806}
);

Обновление:

Получил ST_MaxDistance функцию в PostGIS для расчета расстояния в градусах. Есть ли способ получить расстояние в метрах от функции ST_MaxDistance?

1 Ответ

0 голосов
/ 29 октября 2018

Это довольно просто.
Просто следуйте инструкциям ниже:

  1. Вставьте все точки расстояния в массив в правильном порядке.
  2. Итерируйте их одну за другой, чтобы получить расстояние между двумя точками и суммировать их.

Код следующий:

let result = 0
let points = []

// These points are for example
points.push({ latitude:0, longitude:0 }, { latitude: 3, longitude: 4}, {latitude: 15, longitude: 9})


for (let i=0; i<points.length-1; i++) {
    result += geolib.getDistance(points[i], points[i+1])
}

console.log(result) // result should be 18 in this case

Это должно решить вашу проблему, попробуйте это.

...