Как использовать содержит расположение в библиотеке геометрии карт Google.

Я пытаюсь использоватьcontainsLocation из библиотеки геометрии Google, но не могу заставить его работать ...

var point = new google.maps.LatLng(51.331, 3.538);
var poly = [
 new google.maps.LatLng(51.401818509550615, 3.547626782103622),
 new google.maps.LatLng(51.397574277049365, 3.563607598960424),
 new google.maps.LatLng(51.398540111384975, 3.567880788749134),
 ... // it is a lot bigger
];

if(google.maps.geometry.poly.containsLocation(point, poly) == true) {
 alert("yes");
}

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

Ответы на вопрос(2)

У меня такая же проблема([object Object])Я мог бы решить, создавая полигональную переменную так: draw = new google.maps.Polygon({paths:polyOptions});

Тогда проблема исчезла.

Решение Вопроса

Ок, глупый я

Я был неправ, используя все координаты как массив, мне пришлось использовать созданный объект многоугольника.

var polyOptions = {
 ...
}

draw = new google.maps.Polygon(polyOptions);
draw.setMap(map);

if(google.maps.geometry.poly.containsLocation(point, draw) == true) {
 alert("yes");
}
 Neograph73421 апр. 2013 г., 11:43
Я не уверен, но я считаю, что это было для API версии 2. Тогда это работало ...
 20 апр. 2013 г., 01:17
Когда я делаю это, я получаю ошибкуObject [object Object] has no method 'get'

Ваш ответ на вопрос