Проблема со 180-м меридианом

Mapserver, GeoServer, MapGuide, Google и другое ПО для веб-картографии
Ответить
IRA
Новоприбывший
Сообщения: 14
Зарегистрирован: 24 сен 2013, 10:57
Репутация: 0
Откуда: Москва

Проблема со 180-м меридианом

Сообщение IRA » 08 авг 2017, 15:38

Подскажите в чём проблема? Может быть появились новые настройки по умолчанию,которые требуют корректировки в моём случае? Поскольку в в версиях до 2.5 такой проблемы не было.
Версия Geoserver 2.11.1. Шейпы Чукотского АО (вылезают за 180 градус), слой публикуется без вопросов, затем при попытке просмотра слоя начинаются неприятности - сначала геосервер выводит изображение только до 180 гр.В.Д.(первый масштабный уровень) Затем, через несколько увеличений появляется правая часть (за 180 гр.). При дальнейшем увеличении можно видеть либо левую часть (относительно координаты 180.00266 примерно), либо правую (крайняя точка приблизительно 180.00279). Т.е. имеется разрыв около 0.00009.
Если нагенерить тайлов этого слоя, то в полученной растровой карте будет присутствовать белая полоса (разной ширины на разном масштабе):
Тайлы этого же слоя в Geoservere 2.4 генерятся без ошибок. И в том и в другом случае использую созданную геосетку с отодвинутой координатой по Х до 192гр.В.Д.
Прошу подсказать, как убрать эту ошибку. Заранее, спасибо)
Вложения
uroven2m.JPG
uroven2m.JPG (18.44 КБ) 379 просмотров
uroven3m.jpg
uroven3m.jpg (64.68 КБ) 379 просмотров
uroven4m.jpg
uroven4m.jpg (76.79 КБ) 379 просмотров

IRA
Новоприбывший
Сообщения: 14
Зарегистрирован: 24 сен 2013, 10:57
Репутация: 0
Откуда: Москва

Re: Проблема со 180-м меридианом

Сообщение IRA » 09 авг 2017, 09:28

Уточняю проблему: она начинается еще с WMS-запроса. Один и тотже шейп в 2.4 обрабатывается корректно, а в 2.10 и в 2.11 нет.
Результаты запроса просмотра слоя:
на 2.4 http://localhost:8081/geoserver/DVFO_FO ... openlayers
korr_m.jpg
korr_m.jpg (98.13 КБ) 321 просмотр
на 2.10 http://nn.nnn.nn.nn:8082/geoserver/DVFO ... openlayers
no_korr_m.jpg
no_korr_m.jpg (67.03 КБ) 321 просмотр
Исходный файл имеет разрыв в данных по 180 меридиану, но в ранних версиях геосервера это не имело значения, а теперь выдает ошибку в отображении.
Может существует какая-то настройка (как было при переходе от первых версий, когда параметр OPTIMIZE_LINE_WIGHT стал по умолчанию false???)

IRA
Новоприбывший
Сообщения: 14
Зарегистрирован: 24 сен 2013, 10:57
Репутация: 0
Откуда: Москва

Re: Проблема со 180-м меридианом

Сообщение IRA » 09 авг 2017, 13:32

Всем спасибо за внимание))))
Проблема решена. Кому интересно, так:
В настройках WMS (версии 2.10, 2.11) по умолчанию включенa Projection handling options: Enable continous map wrapping (Включить повторение карты).
Если её снять, то проблемы с отрисовкой запроса WMS и разбивкой на тайлы для карт с положительными координатами (> 180гр) не будет.
Но появятся проблемы для слоёв, хранящих отрицательные координаты (например, скачанные в постгрес из OSM), там перестаёт отрисовываться часть за 180градусами непрерывно с объектами до 180градусами. Эта часть рисуется отдельно.

Решение для всеобщего удовольствия пока не нашли. Ищем. :|

IRA
Новоприбывший
Сообщения: 14
Зарегистрирован: 24 сен 2013, 10:57
Репутация: 0
Откуда: Москва

Re: Проблема со 180-м меридианом

Сообщение IRA » 09 авг 2017, 15:07

Ну вот! Всё таки Geoserver штука умная)))
Решением является использование параметра format_options в WMS-запросе. Т.е. в настройках WMS остаются по умолчанию включенными оба параметра (обработка проекции и повторение карты), а для просмотра слоёв с положительными >180гр в GetMap добавляется &format_options=advancedProjectionHandling:false.
Чтобы кэшировать нужную карту с положительными западными координатами нужно в интерфейсе на вкладке "Кэширование тайлов" выбрать в строке "Add filter" FORMAT_OPTIONS, выбрать значение "Список Строк", затем прописать "advancedProjectionHandling:false" как "Строку по умолчанию" или добавить в "разрешённые строки". Сохранить настройки кэшируемого слоя.
Когда вы запустите этот слой на кэширование, у вас появится дополнительное поле в интефейсе:
Modifiable Parameters: FORMAT_OPTIONS: advancedProjectionHandling:false

Далее всё, как по маслу - никаких разрывов и никаких влияний на OSM-ские карты с отрицательными западными координатами!

Ответить

Вернуться в «Веб-картография»