получить границы долготы и широты от текущего масштаба карты Google - PullRequest
48 голосов
/ 02 августа 2011

Мне нужно знать длину и широту моих четырех углов текущей области, как на этом изображении.

enter image description here

Я пробовал это, но без везения:*

любая помощь?

Ответы [ 2 ]

100 голосов
/ 02 августа 2011

Вы на полпути туда.Все, что вам нужно сделать, это получить границы карты, а затем извлечь (и правильно использовать) координаты углов.

var bounds = map.getBounds();
var ne = bounds.getNorthEast(); // LatLng of the north-east corner
var sw = bounds.getSouthWest(); // LatLng of the south-west corder

Вы получаете северо-западный и юго-восточный углы из двух приведенных выше:

var nw = new google.maps.LatLng(ne.lat(), sw.lng());
var se = new google.maps.LatLng(sw.lat(), ne.lng());

Просто имейте в виду, что карта должна быть уже инициализирована, в противном случае карта ограничиваетсяявляются нулевыми или неопределенными.

Если вы хотите получать обновления обо всех изменениях области просмотра, используйте idle обработчик событий:

google.maps.event.addListener(map, 'idle', function(ev){
    // update the coordinates here
});
0 голосов
/ 11 января 2019
**this is mapbox zoom example**
 map.on('zoom', (el) => {
        map.getBounds();
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...