Здесь показаны различия между двумя версиями данной страницы.
описания_формата_пользовательских_карт_zmp [16/08/2015 18:48] 213.108.168.141 |
описания_формата_пользовательских_карт_zmp [25/01/2021 10:31] (текущий) radioxoma |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | [[главная|Главная страница]] | + | #REDIRECT [[zmp]] |
- | + | ||
- | ====== Описание формата пользовательских карт zmp ====== | + | |
- | + | ||
- | Для работы с каждым картографическим сервисом программе необходима информация о параметрах данного сервиса. Описание этих параметров представляется в виде zip-архива с расширением .zmp либо отдельной папкой с постфиксом .zmp, которые хранятся в папке maps. | + | |
- | + | ||
- | Архив/папка с расширением/постфиксом .zmp может содержать следующие файлы и папки: | + | |
- | + | ||
- | * **params.txt** (обязательно) — параметры карты; | + | |
- | * **[[описание_паскаль_скриптов|GetUrlScript.txt]]** (обязательно) — скрипт, отвечающий за формирование ссылки на тайл карты и пользовательских заголовков; | + | |
- | * **info.txt** — информация о карте; | + | |
- | * графические файлы, ссылка на которые размещена в info.txt (например, легенда карты); | + | |
- | * **EmptyTiles** — директория, содержащая образцы тайлов, которые не будут скачиваться с сервера (например, полностью прозрачные тайлы). В некоторых случаях сервер отдаёт «пустышки» в формате, отличном от формата обычных тайлов, например, обычные тайлы — jpg, а «пустышка» — png. SAS.Планета же переписывает все принятые тайлы в формат, указанный в параметре Ext (см. ниже). В таких случаях в качестве образцов необходимо использовать исходные файлы, присланные сервером, а не брать их из кэша программы. | + | |
- | * **18.bmp** — файл иконки, отображаемой в меню программы (bmp, 18×18 pix, цвет фона RGB(255,0,255)); | + | |
- | * **24.bmp** — файл иконки, отображаемой на панели инструментов (bmp, 24×24 pix, цвет фона RGB(255,0,255)). | + | |
- | В последних версиях программы вместо 18.bmp и 24.bmp можно использовать один файл с именем 24.bmp. Содержимое этого файла — изображение произвольного размера в формате bmp, png, ico и других (но с расширением bmp). | + | |
- | + | ||
- | ===== params.txt ===== | + | |
- | + | ||
- | Параметры файла **params.txt**: | + | |
- | + | ||
- | Раздел **[PARAMS]** | + | |
- | + | ||
- | * **asLayer** — если равно 1, карта используется как слой, накладываемый поверх основной карты. | + | |
- | * **pnum** — порядковый номер карты в меню. | + | |
- | * **GUID** — уникальный идентификационный номер карты (генераторы GUID можно найти в Интернете, например [[http://valeev.org.ru/software/1.html|тут]]). | + | |
- | * **ParentSubMenu** — название пункта родительского меню для данной карты на русском языке. | + | |
- | * **ParentSubMenu_en** — название пункта родительского меню для данной карты на английском языке. | + | |
- | * **ParentSubMenu_uk** — название пункта родительского меню для данной карты на украинском языке. | + | |
- | * существует возможность указать иерархическое меню разделив пункты символом "\" (например ParentSubMenu=Google\Планеты) | + | |
- | * **name** — имя карты на русском языке. | + | |
- | * **name_en** — имя карты на английском языке. | + | |
- | * **name_uk** — имя карты на украинском языке. | + | |
- | * **CacheType** — тип кэша, в который будут записываться тайлы данной карты. 0 — по умолчанию, 1 — GoogleMV, 2 — SAS.Planet, 3 — EarthSlicer, 4 — GlobalMapper Tiles (GMT), 5 — Google Earth, 6 — BerkeleyDB (база данных Беркли), 7 — DBMS (СУБД), 8 — GeoCacher, 9 — RAM (на диск не записываются). | + | |
- | * **DefURLBase** — неизменная часть адреса ссылки на тайлы карты. | + | |
- | * **[[epsg_код_проекции|projection]]** — проекция карты. 1 — Меркатор на сфероид, 2 — Меркатор на эллипсоид, 3 — широта/долгота. | + | |
- | * **[[epsg_код_проекции|sradiusa]]** — радиус большой полуоси эллипсоида. | + | |
- | * **[[epsg_код_проекции|sradiusb]]** — радиус меньшей полуоси эллипсоида. | + | |
- | * **[[epsg_код_проекции|EPSG]]** — код проекции карты. | + | |
- | * **NameInCache** — имя папки в кэше, в которую будут записываться тайлы карты. | + | |
- | * **separator** — разделитель в виде горизонтальной черты, отображаемый в меню после данной карты (1 — отображать, 0 — не отображать). | + | |
- | * **Ext** — расширение тайла (.jpg, .png, .bmp, .gif). Задаёт формат, в котором принудительно будут сохраняться карты, если ContentType другой. | + | |
- | * **UseDwn** — если равно 1, то скачивать тайлы карты разрешено. | + | |
- | * **Sleep** — величина паузы между загрузками отдельных тайлов в миллисекундах. | + | |
- | * **DefHotKey** — сочетание горячих клавиш для данной карты. | + | |
- | * **ContentType** — тип загружаемых данных (например, image/jpeg, image/png). Можно использовать одновременно несколько типов. | + | |
- | * **DefaultContentType** — тип, который будет использоваться, если сервер не вернул никакого типа или если стоит игнорирование типа, возвращаемого сервером. | + | |
- | * **IgnoreContentType** — игнорирование типа, возвращаемого сервером. | + | |
- | * **DetectContentType** - если равно 1, то после загрузки тайла будет выполнятся анализ его содержимого и коррекция поля Content-Type в хидерах ответа сервера | + | |
- | * **MimeTypeSubst** — подстановка типа загружаемых данных (например, «image/png8bit=image/png»). | + | |
- | * **TILERLEFT, TILERRIGHT, TILERTOP, TILERBOTTOM** — параметры для обрезки скачиваемых тайлов соответственно слева, справа, сверху и снизу. Если получившийся прямоугольник не совпадает с квадратом 256×256, он ещё и растягивается или сжимается до этого размера. | + | |
- | * **UsePreloadPage** — если равно 1, использовать предварительно загружаемую страницу (обязательно следует указать её адрес). | + | |
- | * **PreloadPage** — адрес предварительно загружаемой страницы. | + | |
- | * **RequestHead** — пользовательские HTTP-заголовки (headers), передаваемые на сервер. Поля должны отделяться символами \r\n (пример: RequestHead=Referer: maps.kosmosnimki.ru\r\nConnection: Keep-Alive). | + | |
- | * **Version** — версия тайлов, соответствует переменной Version в GetUrlScript.txt. | + | |
- | * **MaxConnectToServerCount** — максимальное число потоков. Значение по умолчанию устанавливается в секции [ZmpDefaultParams] файла SASPlanet.ini | + | |
- | * **IsUseDownloaderInScript=1 ** - использование скачивания внутри скрипта [[http://sasgis.org/mantis/view.php?id=596|добавить отсюда]] | + | |
- | * **UseMemCache** - использовать кэш в памяти (при CacheType=9 (RAM-кэш) отключение данной опции приведёт к ошибке), включено по-умолчанию | + | |
- | * **MemCacheCapacity** - количество тайлов кэшируемых в память. По-умолчанию = 100 | + | |
- | * **MemCacheTTL** - время жизни тайлов (в миллисекундах), кэшируемых в память. По-умолчанию = 60000 мс. (1 мин.) | + | |
- | * **MemCacheClearStrategy** - стратегия очистки (по TTL) кэшируемых в память тайлов. Принимает значения: 0 - удалять ВСЕ тайлы из мем-кэша, если истёк TTL у самого СТАРОГО тайла; 1 - удалять ВСЕ тайлы из мем-кэша, если истёк TTL у самого МОЛОДОГО тайла; 2 - удалять только те тайлы, у которых истёк TTL. По-умолчанию включён режим 1. | + | |
- | * **RestartDownloadOnMemCacheTTL** - автоматически перезакачивать тайлы в пределах видимой области экрана при очистке мем-кэша (работает только если UseMemCache=1). По-умолчанию отключено. | + | |
- | * **License=©** - текст лицензии, который будет выводиться в левом верхнем углу карты. Требуется для соблюдения условий распространения некоторых карт. | + | |
- | * **LayerZOrder** - порядок отображения слоёв, по умолчанию 0. Слои с большим значением будут отображаться поверх слоев с меньшим значением | + | |
- | + | ||
- | * **IteratorSubRectSize** - размеры по вертикали и горизонтали, измеряемые в стандартных тайлах (256х256 пикселей) при скачивании так называемых "мегатайлов", то есть тайлов с размерами более чем 256х256 пикселей. (Только в SACS) | + | |
- | * **IteratorSubRectAlign** - если 0 - всё по умолчанию, если не 0 (1 или 2), то осуществляется точная привязка к размеру мегатайла. Если же не 1, а 2 - то будет дополнительно увеличен размер просматриваемой области, чтобы возможно было скачать даже, например, один левый верхний тайл в режиме кэш+интернет при сдвиге окна влево и вверх. Толкование малопонятное, интересующимся смотреть [[http://www.sasgis.org/mantis/view.php?id=1659|здесь]].(Только в SACS) | + | |
- | + | ||
- | + | ||
- | [[Пример_Порезки_на_тайлы|Порезка на тайлы]] | + | |
- | * **CutCountX=0** (число кусков по X, необязательный параметр) | + | |
- | * **CutCountY=0** (соответственно по Y) | + | |
- | * **CutSizeX=0** (размер куска по X, если не задано — берётся 256 из параметров) | + | |
- | * **CutSizeY=0** (соответственно по Y) | + | |
- | * **CutTileX=0** (положение запрошенного тайла в общей картинке по X) | + | |
- | * **CutTileY=0** (соответственно по Y) | + | |
- | * ** CutToSkip=(0,0),(0,-1)** перечень тайлов которые нужно пропускать(относительно CutTileX,CutTileY). | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | Раздел **[ViewInfo]** | + | |
- | + | ||
- | * **[[epsg_код_проекции|EPSG]]** — код проекции карты при выводе на экран. | + | |
- | + | ||
- | + | ||
- | Некоторые из параметров карты могут быть изменены внутри программы без редактирования файла params.txt. Для этого нужно зайти в //Параметры->Параметры карты// или нажать //Ctrl+Alt+P//. Пользовательские изменения настроек карт сохраняются в файле maps/maps.ini. | + | |
- | + | ||
- | ===== GetUrlScript.txt ===== | + | |
- | + | ||
- | Файл **[[описание_паскаль_скриптов|GetUrlScript.txt]]** содержит скрипт, формирующий полные адреса ссылок на файлы данной карты. Скрипты пишутся на обычном Pascal. | + | |
- | + | ||
- | ===== info.txt ===== | + | |
- | + | ||
- | Файл **info.txt** содержит текстовую информацию о карте. Используется синтаксис HTML (в частности, абзацы надо разделять тегом <BR>). | + | |
- | Также возможен вывод графических файлов (например, легенды карты), используя следующие тэги: | + | |
- | + | ||
- | <img src=”Полный путь\графический файл”/> или | + | |
- | + | ||
- | <img src=”графический файл”> (если файл находится в zmp). | + | |
- | + |