Каждый картографический сервис в SASPlanet описывается в «zmp». Это zip-архив или папка с расширением .zmp
, в которой хранится текстовое описание сервиса в особом формате. Один «zmp» соответствует одной карте и независим от других. Сама аббревиатура является производным от слов: zip map.
Готовые zmp распространяются через git-репозиторий отдельно от SAS.Planet. Сразу после установки программы обновите набор zmp.
SAS.Planet скачивает тайлы с сервера и сохраняет их в кеш. В zmp описывается, как формируется ссылка на конкретный тайл и особенности HTTP-запроса на скачивание с конкретного сервера. При создании zmp чаще всего копируют поведение браузера при просмотре online-карт. Удобно пользоваться встроенными в браузер инструментами веб-разработчика, так, для Firefox нажмите F12, после чего откройте веб-страницу с картой.
Обучающие примеры:
Коллекция zmp карт располагается в подпапках Maps
программы. Изначально в программе использовались только zip-архивы с расширением .zmp
, затем появилась возможность хранить описание в неархивированных папках. Каждый zmp может содержать следующие файлы и папки:
18.bmp
(BMP, 18×18 pix, цвет фона RGB(255,0,255)) и 24.bmp
24×24 pix, цвет фона RGB(255,0,255)).info.txt
(например, легенда карты);Ext
(см. ниже). В таких случаях в качестве образцов необходимо использовать исходные файлы, отправленные сервером, а не брать их из кэша программы.Параметры файла params.txt:
Раздел [PARAMS]
ParentSubMenu=Google\Планеты
)cache_gmt/z{z}/{x}/{y}{ext}
cache_ma/{z}/{x}/{y}{ext}
cache_tms/{z}/{x}/{-y}{ext}
cache_MBtiles
(тикет 1376)ContentType=image/jpeg,image/png
), которые SAS.Planet ожидает получить от сервера. При несовпадении формата (например сервер вернул текст, а не картинку) отображается ошибка.\r\n
(пример: RequestHead=Referer: maps.kosmosnimki.ru\r\nConnection: Keep-Alive
).GetUrlScript.txt
.SASPlanet.ini
Раздел [ViewInfo]
В ночных версиях появилась возможность использовать более продвинутый хоть и медленный парсер kml, c поддержкой чтения оформления меток, линий и полигонов или принудительно задать свои настройки для конкретного zmp. Для того чтобы включить и настроить эти функции используются следующие разделы:
Раздел [PARAMS_Vector]
Раздел [PARAMS_Vector_Point] Настройки оформления точек.
Раздел [PARAMS_Vector_Line] Настройки оформления линий
Раздел [PARAMS_Vector_Poly] Настройки оформления полигонов
Некоторые из параметров карты могут быть изменены внутри программы без редактирования файла params.txt
. Для этого нужно зайти в Параметры→Параметры карты или нажать Ctrl+Alt+P. Пользовательские изменения настроек карт сохраняются в файле Maps/maps.ini
.
Файл GetUrlScript.txt содержит скрипт, формирующий полные адреса ссылок на тайлы данной карты. Скрипты пишутся на обычном Pascal.
Основными параметрами тайла являются масштаб и координаты по осям x
и y
. Масштаб обозначается переменной GetZ
(начинается с единицы), координаты по осям x
и y
- соответственно переменными GetX
и GetY
. Эти переменные привязаны к тайловой сетке, принятой для Google Maps.
Файл info.txt содержит текстовую информацию о карте. Используется синтаксис HTML (в частности, абзацы надо разделять тегом <BR>).
Также возможен вывод графических файлов (например, легенды карты), через тег <img src=”path\to\image.bmp”/>
. Ссылаться можно в т.ч. на изображения в папке zmp.