Всем доброго времени суток.
Может ли кто-то подсказать, как получить статическую карту с большим числом (~900) маркеров? OpenLayers POI работает в принципе, но мне нужна на выходе карта в формате jpg или png или любом другом графическом формате.
Kosmos?
Взять любые симпатичные готовые правила, убрать лишние маркеры и поставить свои.
Рендерится просто. Достаете в формате .osm нужную область, запускаете Kosmos.Gui.exe → New Project. Правой кнопкой по Project Explorer → Add file(s)… Выбираете ваш osm файл.
Когда он загрузится, в свойствах проекта проставьте ему нужные правила (ссылку на любые правила в вики или на локальный файл), например, вот так.
Но у меня немного усложненная ситуация - нужно отрисовать около 300 разных изображений. Т.е. ситуация примерно такая: мы в течение 300 дней наблюдаем за перемещением 900 объектов (1 день - 1 наблюдение для каждого объекта) в рамках одной области. Нужно по дням отрисовать, как перемещались объекты.
Проблему я еще виду в том, что отображать нужно не только карту, но и маркеры.
Пока ничего в голову не приходит, но… В Kosmos можно грузить несколько OSM-файлов.
То есть основная карта - подложка.
И еще нужно подготовить 300 .osm-файлов с одними лишь маркерами.
Ну а потом скриптиком пробежать по всем тремстам. Ибо Kosmos на самом деле консольное приложение (Kosmos.Console), нужно только почитать мануал и подобрать параметры.
Берёте хотя бы от Hind’а “конфиг”, правила рисования, смотрите, как они устроены, дорабатываете их в части картинок маркеров – тут будет чисто ВАШЕ внутреннее соглашение – добавить свои картинки по аналогии с уже существующими в конфиге. Проще всего приделать любой несуществующий тег – он и будет вашим маркером. (наверно, тегов будет несколько, что бы описать разные группы ваших маркеров – или вам безразлично, и все маркеры будут выглядеть одинаково?)
Дописываете скриптом (скрипт сделать самим) к базовой карте (ну посмотрите, как там осм-файл устроен, допишите положения всех маркеров на один день).
Подсовываете всё это Космосу. Он рендерит.
цикл на 300 файлов по пунктам 3)-4) для каждого из дней.
Естественно, придётся изучить параметры командной строки для консольного космоса.
Приляпываете свои теги-маркеры к базовой карте 300 раз и 300 раз рендерите этот подневный бутерброд.
Нового я ничего не писал, по сути, проговорил, как бы я реализовывал метод Hind’а для себя, поподробнее.
Вот