Рассчитать расстояние между пользовательской позицией и листовкой geo JSON polygon - PullRequest
0 голосов
/ 16 января 2020

Мне нужно рассчитать расстояние между пользовательским положением и парой разных географических JSON полигонов в листовке. Я могу получить положение пользователя и координаты:

myPosition.getLatLng();

Теперь мне нужно получить положение и координаты полигонов. Каждая функция выглядит примерно так:

{
      "type": "Feature",
      "properties": {
        "name": "name",
        "desc": "desc",
        "logo": "logotype.png",
        "distance": 0  
      },
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              13.135399818420408,
              47.109640413300816
            ],
            [
              13.13541054725647,
              47.109574695079196
            ],
            [
              13.135678768157959,
              47.10958199710783
            ],
            [
              13.135678768157959,
              47.109676923388875
            ],
            [
              13.135399818420408,
              47.109640413300816
            ]
          ]
        ]
      }
    } 

И затем я хочу использовать координаты, чтобы вычислить расстояние в моей функции и вернуть значение другой функции, которая печатает расстояние во всплывающем окне. Как я могу это сделать?

function onEachFeature(feature, layer) {


            layer.bindPopup("<h3>" + feature.properties.name + "</h3><br>" + "<p>" + feature.properties.desc + "</p><br>" + "<img src='" + feature.properties.logo + "'><br>" + "<p> Avstånd: " + feature.properties.distance + " m</p>")

            layer.bindPopup
        }

 function calculateDistance() {

    } 
...