Вопрос

Я использую Gmaps v3 с MarkerClusterer от http://code.google.com/p/gmaps-utility-library-dev/

Маркеры, отображаемые на карте, определяются пользователем и часто разрушаются, поэтому, независимо от того, сколько вы увеличиваете, кластерщик всегда показывает, что в одном месте есть несколько элементов. Но пользователь должен быть в состоянии щелкнуть каждый отдельный маркер, чтобы увидеть окно Info. Вы знаете, как справиться с этим?

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

Это было полезно?

Решение

Ответьте на комментарий OP в моем предыдущем ответе, так как он не вписывался в поле для комментариев:

Это мешает кластеру группировать маркеры, но когда координаты идентичны, все маркеры остаются на вершине друг друга. Вы знаете обходной путь для этого?

Я думаю, что это ожидаемое поведение с Google Maps - если маркеры имеют точно та же лат / СПГ, то вы получаете маркеры друг на друга.

Один из возможных ресурсов является добавление только первого маркера на карту, а затем, когда вы пытаетесь добавить еще один маркер в уже определенный NAT / LNG (отслеживать их с помощью карты JS), вы можете добавить счет (или создать Массив информации о маркеров) и обновить текст InsoWindow с этой информацией. Например, щелкнув на маркер, затем покажут innovindow, говоря, что в этом месте есть 15 "вещей", а затем перечислите их имена и атрибуты в списке под ним ...

Другая возможность состоит в том, чтобы «развернуть» последующие маркеры, добавив случайное число к концу десятичного лата/СПГ. Таким образом, когда пользователь увеличивает все возможное, чтобы маркеры были немного компенсированы. Этот вариант кажется немного "грязно", хотя.

Другие советы

У меня была эта проблема, и я решил ее, определив свойство конструктора «Maxzoom», которое было ниже, чем Maxzoom для карты Google:

var markerCluster = new MarkerClusterer(map, markers, { maxZoom: 18 });

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top