Подскажите пожалуйста, как правильно решить подобную задачу:
Условие:
Есть сервер с тайлами, отдающий тайлы через modtile (tms) - подложка
Там же установлен tilecache-сервер, который отдаёт прозрачные слои со специфичными данными, накладываемыми поверх подложки (tms) - слоёв может быть много
Задача:
Необходимо распечатать на листе A0/A1 карту определённого района с определённым масштабом так, чтобы поверх подложки (описанный в пункте 1 tms-сервер, либо Bing-снимки) были нанесены объёкты с определённых слоёв, указанных в пункте 2 условия.
Проанализировать ссылки на png, выдаваемые серверами, написать код, который будет скачивать нужные квадраты всех нужных слоёв с сервера, склеить эти png с помощью утилит (imagemagick?), свести эти слои в единый png-файл (imagemagick?), выдать пользователю готовый png в многие мегабайты.
не обращай внимание, сие - шутка весьма глупая, на уровне почему айфон 5с кофе не варит
чтобы бумагу не марать, я слои нарезал и на цифровик заливал. вполне юзабельно получалось.
у саспланеты нету систем внешнего управления, но можно написать скрипты при помощи Autoit.
Стесняюсь спрсить, а какой масштаб?
Дело в том, что если территория велика (судя по фомату A0 можно такое предположить), а тайлы в традиционной для OSM проекции Меркатора, то масштаб изображения будет переменным с юга на север. Так что понадобится не только привести изображение к какому-то разрешению для печати для получения нужного масштаба, но и еще - перепроецировать его, скажем - в UTM, дабы избежать искажений.
Есть смысл смотреть в сторону ГИС, к числу которых SASPlanet не относится.
Попробовал SASPlanet, но не до конца разобрался - надо будет на работе поглядеть плотнее…
Пока суть да дело - написал пару скриптов на баше, которые выкачивают с указанной области нужные слои и склеивают всё это в набор файлов: https://github.com/progserega/wms2png
Весь Приморский край.
Хм, ну дак я выкачиваю квадраты 256x256 и клею их - фактически это просто “портянка” того, что показывает мой локальный сайт на leaflet… Зачем что-то конвертировать?
Разве что за тем, чтобы можно было более менее нормально работать с картами северных районов, где меркаартор всё растягивает… И если там пытаться совмещать, к примеру, wms-слой в меркаарторе и снимок с самолёта - то привязка будет плыть. Вы это имели ввиду или что-то иное?
Я имел в виду то, что если кто-то по карте в проекции Меркатора (там нет удвоенного “а”) собирается измерять расстояния линейкой или как-то еще, при этом охват карты с севера на юг (который мы теперь знаем, но не знали) вдруг оказался бы большим, то так делать было бы нельзя из-за переменного масштаба, а нужно было бы перепроецировать все это дело.
Вы же сами знаете, что Меркатор все растягивает тем сильнее, чем ближе к северу. Важно не северный район или южный, а важно, сколько карта охватывает с севера на юг.
Ну и если бы вы захотели километровую сетку наложить - все равно пришлось бы тащить в ГИС.