Определите, содержит ли оверлей маркерные объекты. Google Maps API V3, библиотека чертежей - PullRequest
1 голос
/ 23 февраля 2012

Я знаю, что это, вероятно, очень простая проблема, но я новичок в javascript, поэтому любая помощь будет принята с благодарностью.

Моя задача - отображать маркеры, только если они находятся внутри объекта рисования прямоугольника.

Я использую это, чтобы получить координаты для наложения прямоугольника:

var bounds = event.overlay.getBounds ()

Мне нужно передать это значение в новый объект LatLngBoundsтак что я могу использовать метод содержит.

Я попробовал myLatLngBounds.extend (bounds), но без радости.

вот мой цикл:

for (var i = 0; i < places.length; i++) {


    if (myLatLngBounds.contains(new google.maps.LatLng(-34.578109296711865, 150.2100400390625),
    new google.maps.LatLng(-34.01994620095979, 151.1878232421875)) ==true) {
        alert("yes");   
}

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

1 Ответ

2 голосов
/ 24 февраля 2012

rectangle.getBounds() уже является google.maps.LatLngBounds объектом, так что вы можете просто использовать bounds.contains(marker.getPosition()) (если я не понимаю что-то здесь).

...