Страница 1 из 1

Тайловый формат с непрямоугольными слоями?

Добавлено: 07 фев 2011, 12:19
ericsson
Прошу восполнить мои знания вот по какому вопросу:
Существует ли какой-либо тайловый формат или протокол (или их "диалект" какого-нибудь конкретного софта), в котором можно было бы создать слой с непрямоугольными границами, например - карту какой-нибудь реки или береговой линии. Но не просто так, а с условием, чтобы viewer этих данных, имея в своем распоряжении только описание этого слоя (нечто похожее на заголовочный файл TMS, capability XML от WMS-сервера, либо XML-файл описания для WMS-драйвера GDAL) или некий индексный файл, вообще не пытался запрашивать данные вне области, покрываемой слоем?
Я понимаю, как это можно эмулировать при использовании HTTP-протокола для доступа (использовать локальный proxy, для которого вместе с тайлсетом делать список пустых тайлов с редиректом на один единственный no-data тайл) но это абсолютно не гибкое решение..

Re: Тайловый формат с непрямоугольными слоями?

Добавлено: 07 фев 2011, 12:41
Mavka
В GeoWebCache, MapProxy и mod-geocache предусмотрено создание специального тайла на ненужные/пустые территории. В итоге клиент получает одну и туже ссылку на такой тайл и скачивает его только один раз.

Re: Тайловый формат с непрямоугольными слоями?

Добавлено: 07 фев 2011, 12:44
ericsson
А каким образом им сообщаются границы слоя?

Re: Тайловый формат с непрямоугольными слоями?

Добавлено: 07 фев 2011, 13:53
Mavka
Пустые тайлы все равно придется загружать много раз, благо что они очень маленькие по объему. Извините что ввел в заблуждение :(

mod-geocache
Пытается сам угадать тайлы, залитые одним цветом и линкует их как один.
GeoWebCache
Что то я никак не найду в доках, но хорошо помню что в каком то релизе об этом громко говорили. Вероятно, что работает он так же.

Ваши действия будут такие:
Задаете фильтр слоя на сервере WMS. Это может быть в настройках программы или запрос с фильтром Intersects. Все что вокруг будет пустым. По идее можно и без кэша обойтись. Но нужно пробовать на реальных данных.

Re: Тайловый формат с непрямоугольными слоями?

Добавлено: 07 фев 2011, 15:59
ericsson
Тут собственно вопрос был именно в отсутствии даже HTTP-запросов или попыток файлового чтения.. В общем, идея понятна.

Re: Тайловый формат с непрямоугольными слоями?

Добавлено: 07 фев 2011, 16:25
Mavka
Чего-чего?

Re: Тайловый формат с непрямоугольными слоями?

Добавлено: 07 фев 2011, 16:55
ericsson
Гхм. В исходном вопросе я уже как-бы изложил, что конечная задача - чтобы клиент (в смысле - устройство) не делал к серверу (где собственно хранятся данные) лишних запросов вообще. По какому протоколу - WMS (поверх HTTP) или по Samba, или как-то еще - все равно.
То есть либо сама программа-viewer каким-то образом понимала бы непрямоугольные границы и не запрашивала бы ничего за их пределами, либо на самом устройстве был бы некий proxy, который бы не занимался кешированием "значащих" тайлов, а только отдавал бы из кэша "незначащий", как ответ на запрос программы-viewer'а за пределы тайлсета.

Re: Тайловый формат с непрямоугольными слоями?

Добавлено: 07 фев 2011, 17:02
Mavka
1. В настройках сервера сразу создать такой слой. Например, в UMN подключаться к PostGIS через вид.
2. В настройках кэша в строку подключения к серверу добавить фильтр.

Или-или.

Re: Тайловый формат с непрямоугольными слоями?

Добавлено: 07 фев 2011, 17:05
ericsson
ОК, понял.