Яндекс.Карты: создание карты глубин скважин
По вопросам разработки сервисов с использованием API Яндекс.Карт обращайтесь ко мне через раздел Контакты.
Исходные условия: есть карта глубин, созданная в конструкторе Яндекс карт. Точек (меток) очень много, из-за этого карта тормозит. Задача: объединить точки в кластеры, чтобы уменьшить тормоза и улучшить внешний вид.
Для начала проверяем возможность создания кластера прямо в конструкторе, чтобы обойтись малой кровью. Такой вопрос уже возникал у пользователей, и похоже, что такой возможности всё ещё нет:
Значит, нужно переделывать карту с нуля, взяв из конструктора только исходные данные: координаты меток, названия деревень, информацию о почве.
Из конструктора Яндекс карт делаем экспорт объектов в .kml файл. На исходной карте присутствуют объекты нескольких видов:
— метки двух цветов (в зависимости от свойств почвы),
— многоугольники,
— толстые линии.
Разметка .kml файла довольно нестандартна, хоть это и обычный XML, но элементы называются по-своему, поэтому для его парсинга нужно писать специальный скрипт.
Далее наносим метки, полигоны, линии на Яндекс карту, используя свежую версию API (на момент написания заметки — 2.1). Метки помещаем в кластеризатор, а полигоны и линии — отдельно. Для сложных геометрических объектов кластеризация не предусмотрена. Но этих объектов всего пара десятков, и это не сильно замедляет отрисовку карты.
И в заключение делаем косметические преобразования. Настраиваем плотность кластеризации (проверяем карту на разных увеличениях и на разных устройствах, и добиваемся, чтобы всё хорошо читалось). Причёсываем информацию во всплывающих подсказках к меткам, например, убираем лишние точки и превращаем м3 в м³.
Смотрите также
Комментарии
Дальнейшие комментарии закрыты. По всем вопросам пишите или звоните мне лично, см. раздел Контакты