[mapserver-users] Conditional BANDS directive based on underlying data

Rahkonen Jukka (MML) jukka.rahkonen at maanmittauslaitos.fi
Tue Apr 30 03:41:13 PDT 2019


Hi,

As Even already answered, using vrt files over the BGRN originals will work. We had a need to use both grayscale originals and vrt-falsified RGB versions (the only band pointing to red, green, and blue in .vrt) in the same service. We have only one tileindex in PostGIS, made from the tiff images, but it can be modified on-the-fly in the tileindex layer

DATA "the_geom from (SELECT the_geom, fid, CASE WHEN filepath like '%_mv_%' THEN replace(filepath,'TIFF','vrt') ELSE filepath END AS location,…

-Jukka Rahkonen-

Lähettäjä: mapserver-users <mapserver-users-bounces at lists.osgeo.org> Puolesta Peter Schmitt
Lähetetty: maanantai 29. huhtikuuta 2019 19.41
Vastaanottaja: mapserver-users at lists.osgeo.org
Aihe: [mapserver-users] Conditional BANDS directive based on underlying data

Hi,

When my data is 4-band (BGRN), I use the BANDS processing directive to yield RGB tiles, like so:

    PROCESSING    "BANDS=4,3,2"

Is there a way to have a single layer within a Mapfile that will set this directive to 4,3,2 when the underlying data has four bands and either skip the directive or set it to 1,2,3 when the underlying data is 3-band?

The only thing I can think of is it to try runtime substitution, where my request might include the band order like "REQUEST=WMS&the_band_order=4,3,2&...." and then configure my mapfile accordingly:

    PROCESSING    "BANDS=%the_band_order%"

Is there another way which doesn't require the client to know about the underlying data?  FWIW, my ultimate use-case serves mosaics using a tile index generated from Postgis. The Postgis table could have a column storing the band information, but I'm not sure how to extract that in my LAYER/BANDS Processing directive.

Thanks!
Pete

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/mapserver-users/attachments/20190430/8512f4f8/attachment.html>


More information about the mapserver-users mailing list