SASGIS

Веб-картография и навигация

SAS.Wiki

Веб-картография и навигация

Инструменты пользователя

Инструменты сайта


zmp

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
zmp [27/05/2023 00:09] – Ссылка на конкретный пост с комментариями radioxomazmp [18/05/2025 00:57] (текущий) – [Формат zmp и создание карт] 94.180.117.26
Строка 1: Строка 1:
 ====== Формат zmp и создание карт ====== ====== Формат zmp и создание карт ======
  
-Каждый картографический сервис в SASPlanet описывается в "zmp". Это zip-архив или папка с расширением ''.zmp'', в которой хранится текстовое описание сервиса в особом формате. Один "zmp" соответствует одной карте и независим от других. Сама аббревиатура является производным от слов: **z**ip **m**a**p**.+Каждый картографический сервис в SASPlanet описывается в "zmp". Это папка или zip-архив с расширением ''.zmp'', в котором хранится текстовое описание сервиса в особом формате. Один "zmp" соответствует одной карте и независим от других. Сама аббревиатура является производным от слов: **z**ip **m**a**p**.
  
-Готовые zmp распространяются через [[основной_репозиторий|git-репозиторий]] отдельно от SAS.Planet. Сразу после установки программы обновите набор zmp.+Коллекция zmp расположена в подпапках ''Maps'' в виде дерева каталогов и распространяется через [[основной_репозиторий|git-репозиторий]] отдельно от SAS.Planet. В прошлом в программе использовались только zip-архивы с расширением ''.zmp''. Сразу после установки программы обновите набор zmp.
  
 ===== Общий принцип ===== ===== Общий принцип =====
-SAS.Planet скачивает [[тайл|тайлы]] с сервера и сохраняет их в кеш. В zmp описывается, как формируется ссылка на конкретный тайл и особенности HTTP-запроса на скачивание с конкретного сервера. При создании zmp чаще всего копируют поведение браузера при просмотре online-карт. Удобно пользоваться встроенными в браузер инструментами веб-разработчика, так, для Firefox нажмите //F12//, после чего откройте веб-страницу с картой.+SAS.Planet скачивает [[тайл|тайлы]] с сервера и сохраняет их в тайловый кеш. В zmp описывается, как формируется ссылка на конкретный тайл и особенности HTTP-запроса на скачивание с конкретного сервера. При создании zmp чаще всего копируют поведение браузера при просмотре online-карт. Удобно пользоваться встроенными в браузер инструментами веб-разработчика, так, для Firefox нажмите //F12//, после чего откройте веб-страницу с картой.
  
 Обучающие примеры: Обучающие примеры:
Строка 20: Строка 20:
 ===== Структура ZMP ===== ===== Структура ZMP =====
  
-Коллекция zmp карт располагается в подпапках ''Maps'' программы. Изначально в программе использовались только zip-архивы с расширением ''.zmp'', затем появилась возможность хранить описание в неархивированных папках. Каждый zmp может содержать следующие файлы и папки:+Каждый zmp может содержать следующие файлы и папки:
  
-  * **params.txt** (обязательно) — параметры карты; +  * **params.txt** — описывает основные параметры карты или слоя, единственный файл, который **является обязательным**
-  * **[[описание_паскаль_скриптов|GetUrlScript.txt]]** (обязательноесли не используется [[простой_пример_с_плейсхолдерами|упрощенное добавление карт]]) — скрипт, отвечающий за формирование ссылки на тайл карты и пользовательских заголовков; +  * **[[описание_паскаль_скриптов|GetUrlScript.txt]]** — скрипт, отвечающий за формирование ссылки на тайл карты и пользовательских заголовков; не нужен если используется [[простой_пример_с_плейсхолдерами|упрощенное добавление карт]]). Скрипты пишутся на обычном Pascal. Основными параметрами [[тайл|тайла]] являются масштаб и координаты по осям ''x'' и ''y''. Масштаб обозначается переменной ''GetZ'' (начинается с единицы), координаты по осям ''x'' и ''y'' - соответственно переменными ''GetX'' и ''GetY''. Эти переменные привязаны к [[Тайл|тайловой сетке]], принятой для [[maps:Google Maps|Google Maps]]
-  * **info.txt** — словесное описание карты в HTML+  * **24.bmp** — файл иконки, отображаемой на панели инструментов. Содержимое этого файла — изображение произвольного размера в формате BMP, PNG, ICO и другихно имя должно быть ''24.bmp''. В ранних версиях программы требовались иконки ''18.bmp'' (BMP, 18×18 pix, цвет фона RGB(255,0,255)) и ''24.bmp'' 24×24 pix, цвет фона RGB(255,0,255))
-  * **24.bmp** — файл иконки, отображаемой на панели инструментов. Содержимое этого файла — изображение произвольного размера в формате BMP, PNG, ICO и других (но с расширением BMP). В ранних версиях программы требовались иконки ''18.bmp'' (BMP, 18×18 pix, цвет фона RGB(255,0,255)) и ''24.bmp'' 24×24 pix, цвет фона RGB(255,0,255)).+  * **info.txt** — словесное описание карты в подмножестве HTML (в частности, абзацы надо разделять тегом <BR>). Возможен вывод графических файлов (например, легенды карты), через тег ''<img src=”path\to\image.bmp”/>''. Ссылаться можно в т.ч. на изображения в папке zmp.
   * графические файлы, ссылка на которые размещена в ''info.txt'' (например, легенда карты);   * графические файлы, ссылка на которые размещена в ''info.txt'' (например, легенда карты);
-  * **EmptyTiles** — директория, содержащая образцы тайлов, которые не будут сохраняться после скачивания с сервера (например, полностью прозрачные тайлы). В некоторых случаях сервер отдаёт «пустышки» в формате, отличном от формата обычных тайлов, например, обычные тайлы — jpg, а «пустышка» — png. SAS.Planet же переписывает все принятые тайлы в формат, указанный в параметре ''Ext'' (см. ниже). В таких случаях в качестве образцов необходимо использовать исходные файлы, отправленные сервером, а не брать их из кэша программы.+  * **EmptyTiles** — директория, содержащая образцы файлов, которые отдаёт сервер вместо пустых (полностью прозрачных) или отсутствующих тайлов, а также в случае бана. Такие тайлы не будут сохраняться в SAS.Planet. В некоторых случаях сервер отдаёт нормальные тайлы в одном формате (например //image/jpeg//), а «пустышки» в другом (например полностью прозрачный //image/png//)Поскольку SAS.Planet конвертирует все принятые тайлы в формат, указанный в параметре ''Ext'' (см. ниже)то в качестве образцов необходимо использовать исходные файлы, отправленные сервером, а не брать их из кэша программы.
  
  
 ===== params.txt ===== ===== params.txt =====
  
-Параметры файла **params.txt**:+> Некоторые из параметров карты могут быть изменены внутри программы без редактирования файла ''params.txt''. Для этого нужно зайти в //Параметры->Параметры карты// или нажать //Ctrl+Alt+P//. Пользовательские изменения настроек карт сохраняются в файле ''Maps/maps.ini''.
  
 Раздел **[PARAMS]** Раздел **[PARAMS]**
Строка 49: Строка 49:
  
 ^ CacheType ^ Название ^ Путь ^ Комментарий ^ ^ CacheType ^ Название ^ Путь ^ Комментарий ^
-| 0  | По умолчанию                  |+| 0  | По умолчанию                  |                                 | Ранее использовался 2, теперь 71 |
 | 1  | GoogleMV                      | ''cache_old/ /{z+1}/{q}.{ext}'' | [[https://learn.microsoft.com/en-us/bingmaps/articles/bing-maps-tile-system|Quadkey]] | | 1  | GoogleMV                      | ''cache_old/ /{z+1}/{q}.{ext}'' | [[https://learn.microsoft.com/en-us/bingmaps/articles/bing-maps-tile-system|Quadkey]] |
 | 2  | SAS.Planet                    | ''cache/'' | | 2  | SAS.Planet                    | ''cache/'' |
Строка 56: Строка 56:
 | 41 | GlobalMapper Aux              | ''cache_gmt/'' | Не используется? | | 41 | GlobalMapper Aux              | ''cache_gmt/'' | Не используется? |
 | 42 | GlobalMapper Bing             | ''cache_gmt/ /{z}/{y}/{x}.{ext}'' | [[http://www.sasgis.org/mantis/view.php?id=780|Тикет 780]] | | 42 | GlobalMapper Bing             | ''cache_gmt/ /{z}/{y}/{x}.{ext}'' | [[http://www.sasgis.org/mantis/view.php?id=780|Тикет 780]] |
-| 43 | **Mobile Atlas Creator** ([[https://mobac.sourceforge.io/|MOBAC]])  | ''cache_ma/ /{z}/{x}/{y}.{ext}'' | [[http://www.sasgis.org/mantis/view.php?id=1936|Тикет 1936]]. Тип кеша известен как [[https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames|Slippy map]]. Нумерация тайлов используется в Openstreetmap и Google. Кеш легко подключается к [[https://josm.openstreetmap.de/|JOSM]], QGIS+| 43 | **[[https://mobac.sourceforge.io/|Mobile Atlas Creator]] (MOBAC)** | ''cache_ma/ /{z}/{x}/{y}.{ext}'' | [[http://www.sasgis.org/mantis/view.php?id=1936|Тикет 1936]]. Тип кеша известен как [[https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames|Slippy map]]. Нумерация тайлов используется в [[OpenStreetMap]] и Google. Кеш подключается к QGIS, [[https://mapproxy.org/docs/nightly/caches.html#cache-file|MapProxy]]. Для использования с [[https://josm.openstreetmap.de/|JOSM]] достаточно
-  tms:file:///home/user/SAS.Planet/cache_ma/vesat/{z}/{x}/{y}.jpg+  tms:file:///home/user/SAS.Planet/cache_ma/vesat/{z}/{x}/{y}.jpg  # Linux
   tms[18]:file:///c:/SAS.Planet/cache_ma/vesat/{z}/{x}/{y}.jpg  # Windows   tms[18]:file:///c:/SAS.Planet/cache_ma/vesat/{z}/{x}/{y}.jpg  # Windows
 | |
 | 44 | OsmAnd+ Tiles                 | Экспорт ''{z}/{x}/{y}.{ext}.tile'' | [[http://www.sasgis.org/mantis/view.php?id=884|Тикет 884]]. Не то же самое что "OsmAnd (SQLite3)" ''*.sqlitedb'' ([[http://www.sasgis.org/mantis/view.php?id=3577|тикет 3577]]) | | 44 | OsmAnd+ Tiles                 | Экспорт ''{z}/{x}/{y}.{ext}.tile'' | [[http://www.sasgis.org/mantis/view.php?id=884|Тикет 884]]. Не то же самое что "OsmAnd (SQLite3)" ''*.sqlitedb'' ([[http://www.sasgis.org/mantis/view.php?id=3577|тикет 3577]]) |
-| 45 | Tile Map Service              | ''cache_tms/ /{z}/{x}/{-y}.{ext}'' | [[http://www.sasgis.org/mantis/view.php?id=2848|Тикет 2848]]. Тип кеша известен как [[https://wiki.osgeo.org/wiki/Tile_Map_Service_Specification|TMS (спецификация osgeo.org)]]. [[https://wiki.openstreetmap.org/wiki/TMS|OSM Wiki]]. |+| 45 | [[https://wiki.openstreetmap.org/wiki/TMS|Tile Map Service]] (TMS) | ''cache_tms/ /{z}/{x}/{-y}.{ext}'' | [[http://www.sasgis.org/mantis/view.php?id=2848|Тикет 2848]]. ([[https://wiki.osgeo.org/wiki/Tile_Map_Service_Specification|спецификация osgeo.org)]]. |
 | 5  | Google Earth                  | ''cache_ge/'' | | 5  | Google Earth                  | ''cache_ge/'' |
 | 51 | GoogleEarth Terrain           | | 51 | GoogleEarth Terrain           |
-| 6  | BerkeleyDB                    | ''cache_db/'' | [[https://ru.wikipedia.org/wiki/Berkeley_DB|Wikipedia]] |+| 6  | [[https://ru.wikipedia.org/wiki/Berkeley_DB|BerkeleyDB]] | ''cache_db/''|
 | 61 | BerkeleyDB (Versioned)        | | 61 | BerkeleyDB (Versioned)        |
 | 7  | DBMS (СУБД)                   | | 7  | DBMS (СУБД)                   |
-| 71 | SQLite3                       | ''cache_sqlite/ /z{z+1}/0/0/0.0.sqlitedb'' | [[http://www.sasgis.org/mantis/view.php?id=1376|Тикет 1376]] | +| 71 | SQLite3                       | ''cache_sqlite/ /z{z+1}/0/0/0.0.sqlitedb'' | [[http://www.sasgis.org/mantis/view.php?id=1376#c10961|Тикет 1376]]. Создаётся несколько баз SQLite. 
-| 72 | MBTiles                       | Экспорт ''*.mbtiles'' | [[http://www.sasgis.org/mantis/view.php?id=1376#c10961|Тикет 1376]], [[https://wiki.openstreetmap.org/wiki/MBTiles|OSM wiki]] |+| 72 | [[https://wiki.openstreetmap.org/wiki/MBTiles|MBTiles]] | Экспорт ''*.mbtiles'' | [[http://www.sasgis.org/mantis/view.php?id=1376|Тикет 1376]], ([[https://github.com/mapbox/mbtiles-spec|спецификация MapBox]]). Используется одна база SQLite, но формат так ограничен, что пригоден только для экспорта. |
 | 8  | GeoCacher                     | | 8  | GeoCacher                     |
 | 9  | RAM (на диск не записываются) | | [[http://www.sasgis.org/mantis/view.php?id=1755|Тикет 1755]] | | 9  | RAM (на диск не записываются) | | [[http://www.sasgis.org/mantis/view.php?id=1755|Тикет 1755]] |
Строка 99: Строка 99:
   *  **MemCacheCapacity** - количество тайлов кэшируемых в память. По-умолчанию = 100   *  **MemCacheCapacity** - количество тайлов кэшируемых в память. По-умолчанию = 100
   *  **MemCacheTTL** - время жизни тайлов (в миллисекундах), кэшируемых в память. По-умолчанию = 60000 мс. (1 мин)   *  **MemCacheTTL** - время жизни тайлов (в миллисекундах), кэшируемых в память. По-умолчанию = 60000 мс. (1 мин)
-  *  **MemCacheClearStrategy** - стратегия очистки (по TTL) кэшируемых в память тайлов. Принимает значения: 0 - удалять ВСЕ тайлы из RAM-кэша, если истёк TTL у самого СТАРОГО тайла; 1 - удалять ВСЕ тайлы из RAM-кэша, если истёк TTL у самого МОЛОДОГО тайла; 2 - удалять только те тайлы, у которых истёк TTL. Помолчанию включён режим 1.+  *  **MemCacheClearStrategy** - стратегия очистки (по TTL) кэшируемых в память тайлов. Принимает значения:  
 +     0 - удалять ВСЕ тайлы из RAM-кэша, если истёк TTL у самого СТАРОГО тайла;  
 +     1 - удалять ВСЕ тайлы из RAM-кэша, если истёк TTL у самого МОЛОДОГО тайла (включён по-умолчанию) 
 +     2 - удалять только те тайлы, у которых истёк TTL
 +     * 3 НЕ удалять тайлы по TTL.
   *  **RestartDownloadOnMemCacheTTL** - автоматически перезакачивать тайлы в пределах видимой области экрана при очистке RAM-кэша (работает только если UseMemCache=1). По-умолчанию отключено.   *  **RestartDownloadOnMemCacheTTL** - автоматически перезакачивать тайлы в пределах видимой области экрана при очистке RAM-кэша (работает только если UseMemCache=1). По-умолчанию отключено.
   * **License=©** - текст лицензии, который будет выводиться в левом верхнем углу карты. Требуется для соблюдения условий распространения некоторых карт.    * **License=©** - текст лицензии, который будет выводиться в левом верхнем углу карты. Требуется для соблюдения условий распространения некоторых карт. 
Строка 140: Строка 144:
   *  **FillColor** —  цвет заливки полигона по-умолчанию   *  **FillColor** —  цвет заливки полигона по-умолчанию
   *  **IsForceFillColor**  — если равно 1 (это значение по-умолчанию), то будет принудительно использовать цвет из **FillColor**, даже если парсер смог считать настройки из параметров полигона   *  **IsForceFillColor**  — если равно 1 (это значение по-умолчанию), то будет принудительно использовать цвет из **FillColor**, даже если парсер смог считать настройки из параметров полигона
- 
- 
-Некоторые из параметров карты могут быть изменены внутри программы без редактирования файла ''params.txt''. Для этого нужно зайти в //Параметры->Параметры карты// или нажать //Ctrl+Alt+P//. Пользовательские изменения настроек карт сохраняются в файле ''Maps/maps.ini''. 
- 
- 
-===== GetUrlScript.txt ===== 
- 
-Файл **[[Описание Паскаль скриптов|GetUrlScript.txt]]** содержит скрипт, формирующий полные адреса ссылок на тайлы данной карты. Скрипты пишутся на обычном Pascal. 
- 
-Основными параметрами [[тайл|тайла]] являются масштаб и координаты по осям ''x'' и ''y''. Масштаб обозначается переменной ''GetZ'' (начинается с единицы), координаты по осям ''x'' и ''y'' - соответственно переменными ''GetX'' и ''GetY''. Эти переменные привязаны к [[Тайл|тайловой сетке]], принятой для [[maps:Google Maps|Google Maps]]. 
- 
-===== info.txt ===== 
- 
-Файл **info.txt** содержит текстовую информацию о карте. Используется синтаксис HTML (в частности, абзацы надо разделять тегом <BR>). 
-Также возможен вывод графических файлов (например, легенды карты), через тег ''<img src=”path\to\image.bmp”/>''. Ссылаться можно в т.ч. на изображения в папке zmp. 
  
/home/sasgisor/public_html/wikisasiya/data/attic/zmp.1685146171.txt.gz · Последнее изменение: radioxoma

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki