... | @@ -15,10 +15,15 @@ GaladrielMap использует карты в виде мозаики квад |
... | @@ -15,10 +15,15 @@ GaladrielMap использует карты в виде мозаики квад |
|
|
|
|
|
Тайлы хранятся в файловой структуре в соответствии с соглашением [OSM slippy map](https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames):
|
|
Тайлы хранятся в файловой структуре в соответствии с соглашением [OSM slippy map](https://wiki.openstreetmap.org/wiki/Slippy_map_tilenames):
|
|
`название_карты/масштаб/x/y.расширение`
|
|
`название_карты/масштаб/x/y.расширение`
|
|
|
|
Однако, возможна модификация этой структуры для хранения вариантов карты:
|
|
|
|
`название_карты/вариант/масштаб/x/y.расширение`
|
|
|
|
или даже
|
|
|
|
`название_карты/вариант/подвариант/версия/масштаб/x/y.расширение`
|
|
|
|
|
|
Однако, GaladrielCache позволяет пользователю заменить механизм получения тайла из локального хранилища - своим или имеющимся. В составе GaladrielCache есть средство для работы с (растровыми) картами в формате [MBTiles](https://docs.mapbox.com/help/glossary/mbtiles/). Пользователь может использовать это средство для отображения имеющейся у него карты в формате MBTiles. Детально это описано в документации к файлу описания источника карты GaladrielCache.
|
|
|
|
|
|
|
|
Основной формат тайлов в GaladrielCache -- растровые, т.е., тайл представляет собой просто картинку в одном из обычных графических форматов. Однако, ничего не мешает использовать векторные тайлы -- всё необходимое для их поддержки есть. Однако, большое разнообразие форматов, большой объём и в целом отсутствие стандартов делают применение векторных тайлов нецелесообразным.
|
|
Кроме того, GaladrielCache позволяет пользователю заменить механизм получения тайла из локального хранилища - своим или имеющимся. В составе GaladrielCache есть средство для работы с (растровыми) картами в формате [MBTiles](https://docs.mapbox.com/help/glossary/mbtiles/). Пользователь может использовать это средство для отображения имеющейся у него карты в формате MBTiles. Детально это описано в документации к файлу описания источника карты GaladrielCache.
|
|
|
|
|
|
|
|
Основной формат тайлов в GaladrielCache -- растровые, т.е., тайл представляет собой просто картинку в одном из обычных графических форматов. Однако, ничего не мешает использовать векторные тайлы -- всё необходимое для их поддержки есть. Но большое разнообразие форматов, большой объём и в целом отсутствие стандартов делают применение векторных тайлов нецелесообразным.
|
|
Что касается не-тайловых векторных форматов -- пока их поддержка отсутствует.
|
|
Что касается не-тайловых векторных форматов -- пока их поддержка отсутствует.
|
|
|
|
|
|
## Файл описания источника карты
|
|
## Файл описания источника карты
|
... | @@ -27,6 +32,7 @@ GaladrielMap использует карты в виде мозаики квад |
... | @@ -27,6 +32,7 @@ GaladrielMap использует карты в виде мозаики квад |
|
* список "мусорных" тайлов: тайлов, которые сохранять не надо. Например, некоторые карты не покрывают весь мир, но для не покрытых территорий их сервер отдаёт картинку - заполнитель. Хранить такую картинку бессмысленно, а место она занимает.
|
|
* список "мусорных" тайлов: тайлов, которые сохранять не надо. Например, некоторые карты не покрывают весь мир, но для не покрытых территорий их сервер отдаёт картинку - заполнитель. Хранить такую картинку бессмысленно, а место она занимает.
|
|
* информация для контроля доступности источника карты. Это хеш-сумма определённого тайла. Имеется специальная программа, которая из каждого файла описания источника карты читает эту информацию и пытается получить от источника этот тайл. Если не удаётся -- она заносит сообщение в специальный журнал. Предполагается, что эта программа периодически запускается посредством cron. Однако, пользователь должен сам настроить запуск и сам следить за журналом.
|
|
* информация для контроля доступности источника карты. Это хеш-сумма определённого тайла. Имеется специальная программа, которая из каждого файла описания источника карты читает эту информацию и пытается получить от источника этот тайл. Если не удаётся -- она заносит сообщение в специальный журнал. Предполагается, что эта программа периодически запускается посредством cron. Однако, пользователь должен сам настроить запуск и сам следить за журналом.
|
|
* процедура обработки тайла перед показом, если необходимо. Процедура может быть любой, а одно из полезных применений -- замена одного цвета на прозрачный. Если таким образом заменить цвет моря на топокарте на прозрачный, то эту топокарту можно показать поверх морской карты, и получить морскую карту с подробной береговой обстановкой.
|
|
* процедура обработки тайла перед показом, если необходимо. Процедура может быть любой, а одно из полезных применений -- замена одного цвета на прозрачный. Если таким образом заменить цвет моря на топокарте на прозрачный, то эту топокарту можно показать поверх морской карты, и получить морскую карту с подробной береговой обстановкой.
|
|
|
|
* функции для модификации интерфейса картплотера при открытии карты. Например, при открытии карты погоды появляется ещё один пункт меню -- для управления этой картой.
|
|
|
|
|
|
## Обслуживание хранилища
|
|
## Обслуживание хранилища
|
|
В составе GaladrielCache имеется утилита для очистки хранилища от "мусорных" тайлов. Её можно использовать для очистки всего хранилища:
|
|
В составе GaladrielCache имеется утилита для очистки хранилища от "мусорных" тайлов. Её можно использовать для очистки всего хранилища:
|
... | | ... | |