Проблема с несколькими маркерами на одной позиции в Google Map API - PullRequest
2 голосов
/ 17 июля 2010

Я использую Google Map в своем приложении.У меня есть тысячи маркеров на моей карте.

Я могу хорошо отобразить их на карте.Я использую MySQL в качестве базы данных в php.

Но у меня проблема, когда в одной и той же позиции находятся несколько мест.Он отображает только один маркер для всех местоположений (для одной и той же позиции).

В API нет решения для этого.Кто-нибудь может мне помочь в этом?

Заранее спасибо ...

Ответы [ 4 ]

2 голосов
/ 30 мая 2011

Это не «проблема» как таковая .Подумайте об этом ... Если несколько точек разделяют ТОЧНО ЖЕ географическое местоположение, ЯВНО, они ВСЕ будут представлены ОДНОЙ точкой.Однако в действительности все маркеры для одной и той же точки располагаются друг над другом.

Вы можете попробовать использовать MarkerClusterer для представления того, сколько маркеров имеют одинаковое географическое расположение с кластером: http://googlegeodevelopers.blogspot.com/2009/04/markerclusterer-solution-to-too-many.html

OTOH, если у вас столько точек, которые разделяют ОДНОВо-первых, местоположение, требующее кластеризации, было бы абсолютно бессмысленно декластеризовывать их при максимальном уровне масштабирования.Кроме того, это не то, что markerclusterer сделает.

Если вам нужно возможное решение о том, как представлять несколько точек в одном месте по отдельности, см. Мой блог: http://act28.blogspot.com/2011/05/multiple-locations-with-same-latlong.html

1 голос
/ 17 июля 2010

Для широты / долготы , появляющихся в том же месте при уменьшении масштаба, но на самом деле другое, посмотрите на пример кластеризации в http://code.google.com/apis/maps/documentation/javascript/v2/overlays.html#Marker_Manager Для точно в той же позиции, Вы ничего не можете сделать, кроме как слегка изменить свою позицию.

0 голосов
/ 13 октября 2012

Я хэшировал значения long / lat в специальном ключе массива.Тогда все маркеры будут в одном и том же ключе массива с одним и тем же местоположением, затем вы можете выполнить итерацию массива и отобразить информацию в одном информационном окне.

0 голосов
/ 17 июля 2010

Звучит так, будто вы размещаете один маркер прямо поверх другого. Вы используете координаты широты / долготы? Если это так, вы можете отрегулировать дубликаты местоположений путем случайного добавления или вычитания (очень) небольшого значения из дубликата широта / долгота. Вроде хаки, но я не уверен, как еще ты мог бы справиться с этим.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...