Как получить координаты четырех угловых точек прямоугольника на карте Google? - PullRequest
0 голосов
/ 27 августа 2018

Скажите, вот координата для центральной точки:

var initLat = 10.398671; 
var initLng = -84.170756;

Теперь я хочу нарисовать прямоугольник на карте Google. Для этого мне нужно знать координаты остальных четырех точек прямоугольника.

Ниже приведена попытка вычислить координаты для четырех угловых точек прямоугольника.

  function getCoordinatesByDistance(meters) {
                var coords = [{lat: 10.398671, lng: -84.170756}];
                var initLat =coords[0]['lat'];
                var initLng = coords[0]['lng'];
                var earth = 6378.137;  //radius of the earth in kilometer

                coords.push(getCoordinate(initLat, initLng, 45, meters, earth));
                coords.push(getCoordinate(initLat, initLng, 135, meters, earth));
                coords.push(getCoordinate(initLat, initLng, 225, meters, earth));
                coords.push(getCoordinate(initLat, initLng, 315, meters, earth));

                return coords;
            }

            function getCoordinate(initLat, initLng,deg, meters, earth) {
                var m = (1 / ((2 * Math.PI / deg) * earth)) / 1000;  //1 meter in degree
                return {
                    lat: initLat + meters * m,
                    lng: initLng + (meters * m) / Math.cos(initLat * (Math.PI / 180)), 
                } 
            }

Но координаты, возвращенные вышеупомянутой функцией, имеют форму линии, а не прямоугольника на карте Google. Любой совет, чтобы получить точки, чтобы сформировать прямоугольник?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...