Я должен показать набор маркеров на карте, чтобы указать близлежащие достопримечательности. Эти маркеры откроют общедоступные чаты, щелкнув мышью, и поэтому я думаю, что пользователи должны увидеть краткую информацию о каждом маркере перед тем, как войти в эту комнату, без необходимости нажимать на маркер. Однако, если я изменить маркер иконки в этом смысле, некоторые маркеры могут столкнуться, как вы можете увидеть ниже:Как устранить встречные маркеры в Картах Google
То, что я хочу сделать, это показывает как можно больше маркеров без столкновений и заменить иконку из этих сталкивающихся из них с очень маленьким маркером, как точка (и никакой информации об адресе):
я достиг, чтобы получить этот результат выполнения алгоритма ось х развертки для обнаружения столкновений, но к сожалению, если маркер перестает сталкиваться после того, как пользователь прокручивает карту o r он существует с экрана или другие маркеры входят в экраны и начинают сталкиваться с другими маркерами, или пользователь прокручивает до совершенно новой области, этот алгоритм должен выполняться снова и снова на каждом шагу. Чтобы устранить большинство встречных маркеров, я использую кластеры маркеров-utils, но для решения этой проблемы мне нужна более кропотливая методология. Я считаю, что реализовать quadtree, но я не мог быть уверен, что это лучший способ или нет. Любой совет?
Пример:
Я упомянул об этом в вопросе. Я не хочу видеть перекрытие маркеров именно так: https://tctechcrunch2011.files.wordpress.com/2015/02/citymaps.jpg?w=687 Кластеризация маркеров не может сделать то же самое. Посмотрите первое изображение в указанной вами ссылке. Хотя есть несколько хороших кластеров, есть также перекрывающиеся маркеры. –
Извините, я немного ускорился. Тем не менее, я бы подумал, что вы можете просто изменить код кластеризации? (это открытый источник на github) ... – SteelBytes
На самом деле одним из лучших способов сделать это является установление минимального размера кластера как одного, а затем определение многоэлементных кластеров в виде точек. –