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

Растры на MapServer + OpenLayers

Добавлено: 08 май 2014, 07:54
Serp
Всем добрый день!
Сделали WMS сервис на MapServer + OpenLayers. Нужно вместе с векторными слоями показать отдельные растры – космоснимки, например. Несколько штук на разные даты с возможностью вкл/выкл в интерактиве. Но возникла проблема - все вокруг растров всё заливается цветом фона. Если задать прозрачность , то тускнеет изображение. Попробовал, на всякий случай, другие типы слоев MapServer и Image. В MapServer-е всё то же, а Image, что-то так и не заработал.
Помогите, кто в курсе...

Re: Растры на MapServer + OpenLayers

Добавлено: 08 май 2014, 08:05
Denis Rykov
В каком формате запрашиваете растровые данные, в формате с поддержкой прозрачности (PNG, например)? В OpenLayers в настройках слоя класса OpenLayers.Layer.WMS можно в третьей группе параметров указать transparent: true и слой автоматически будет запрашиваться в формате image/png с прозрачностью (TRANSPARENT=TRUE).

Re: Растры на MapServer + OpenLayers

Добавлено: 08 май 2014, 12:06
Serp
В map-файле у нас PNG.
В OpenLayers сейчас поставил:
layer = new OpenLayers.Layer.WMS( "UTM_46N_LT5",
wms_url, {layers: 'UTM_46N_LT5'},
{'isBaseLayer': false, transparent: true});
но карта все равно заливается фоном, кроме самого растра.
В принципе, векторы поверх него рисуются, но вот 2 соседних растра уже не посмотришь.

Re: Растры на MapServer + OpenLayers

Добавлено: 08 май 2014, 12:14
Serp
Ух, ты! Учитесь, дети. Тебе же сказали - "в третьей группе параметров " , т.е. вот так:
{layers: 'UTM_46N_LT5', transparent: true}
Вот теперь заработало!
Денис, а может Вы подскажете, заодно, как убрать черную рамку вокруг Ландсатов? Т.е. сделать прозрачным фон 0,0,0.

Re: Растры на MapServer + OpenLayers

Добавлено: 08 май 2014, 19:29
Denis Rykov
В map-файле внутри блока LAYER написать:

Код: Выделить всё

OFFSITE 0 0 0