@shsv382

Как отображать элементы в зависимости от масштаба содержащего их блока?

Есть карта звездного неба, для которой я получаю по API координаты элементов - звезд, галактик и т.д. Затем я отображаю эти элементы на карте в формате Метка+Лейбл.
Проблема в том, что при большом масштабе карты и высокой плотности элементов лейблы некрасиво накладываются друг на друга.
Как скрыть часть элементов для крупного масштаба и отобразить для мелкого, наподобие как скрываются и отображаются объекты в яндексс и гугл картах? Пока думаю в сторону предварительного построения графа из элементов с последующим скрытием соседей.
  • Вопрос задан
  • 71 просмотр
Пригласить эксперта
Ответы на вопрос 2
sfi0zy
@sfi0zy
Creative frontend developer
Это называется "кластеризация". Типовая задача при работе с картами. Во многих библиотеках для отображения карт решение есть прямо из коробки. Тут не нужно ничего придумывать, можно воспользоваться готовыми алгоритмами.
Ответ написан
cyber-jet
@cyber-jet
Самый просто способ, если величина масштаба известна, захардкодить условия отображения: галактики -> звёзды -> планеты и т.д.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы