Вопрос по google-maps-api-3 – Google Maps v3 map.getBounds (). СодержитLatLng не является функцией

3

Как установить & quot; setMap & quot; Функция здесь, чтобы портировать этот код на v3? Или портируй это вообще на v3 ...

// картоприемник, если элемент находится за пределами карты

while ((!map.getBounds().containsLatLng(marker.getPosition())) & (showAllCategoryElements == 0)) {
        var newCenterPointLng = (map.getBounds().getCenter().lng() + marker.getPosition().lng()) / 2;
        var newCenterPointLat = (map.getBounds().getCenter().lat() + marker.getPosition().lat()) / 2;
        map.panTo(new google.maps.LatLng(newCenterPointLat, newCenterPointLng));
        map.setCenter(new google.maps.LatLng(newCenterPointLat, newCenterPointLng));
        if (!map.getBounds().containsLatLng(marker.getPosition())){
            map.zoomOut();
        }

вот примерhttp://d.hatena.ne.jp/tsmsogn/20111216/1324026723 Несколько советов: markus.tao.at/geo/google-maps-api-v3-is-in-town/

я также импортируюhttps://github.com/tparkin/Google-Maps-Point-in-Polygon js, чтобы получить & quot; содержитLatLng & quot; служба поддержки

Спасибо за помощь или советы

Ваш Ответ

2   ответа
2

В Google Maps v3 у нас есть другой метод. Вот лучший пример для вас. https://developers.google.com/maps/documentation/javascript/examples/poly-containsLocation

3

Согласно документации API, .getbounds () возвращает google.maps.LatLngBounds, а не maps.Polygon.

Вам не нужен дополнительный импорт, так как LatLngBounds имеет функцию содержимого.

map.getBounds().contains(marker.getPosition()) ....

https://developers.google.com/maps/documentation/javascript/reference#LatLngBounds

Похожие вопросы