Wonderful to hear that you are using the MapServer.pdf! (I actually put much effort into maintaining that PDF output, that but I never hear feedback...until someone reports a problem, like you did now, ha). Sometimes my updates differ from website rebuilds, will be sure to update the PDF for the upcoming 8.0.1 release.

Again, thanks for this report!

(also, don't be afraid to report doc issues like this at https://github.com/MapServer/MapServer-documentation/issues )

thanks again for the report!

-jeff




--
Jeff McKenna
GatewayGeo: Developers of MS4W, MapServer Consulting and Training
co-founder of FOSS4G
http://gatewaygeo.com/



On 2023-02-21 12:52 p.m., Matthew Graber wrote:
Hello all!

With MapServer 8, I'm wondering what the proper way to change the opacity of a single layer in a multilayer WMS request is.

For example, the following URL excerpt shows the old way of accomplishing this that worked while using MapServer 7:

SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image%2Fpng&LAYERS=test_a,test_b&map.layer[test_b]=OPACITY+50

My understanding is that this would have the same effect as adding "OPACITY 50" to the test_b layer in the mapfile. The mapfile containing test_a and test_b did not have OPACITY included when they were written. Obviously, this no longer works with MapServer 8, and now that request has the same results as omitting the "&map.layer[test_b]=OPACITY+50" portion entirely.

Based on https://mapserver.org/fr/MIGRATION_GUIDE.html <https://mapserver.org/fr/MIGRATION_GUIDE.html>, I see that OPACITY now belongs inside a COMPOSITE object. I tried the following modifications to the request URL:

SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image%2Fpng&LAYERS=test_a,test_b&map.layer[test_b].composite=OPACITY+50
SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image%2Fpng&LAYERS=test_a,test_b&map.layer[test_b].composite[0]=OPACITY+50

I also tried this both with the mapfile left as-is, and with an empty COMPOSITE object being included in each layer object, and each time I got the same unsuccessful result as before.

Is there a way to accomplish this in MapServer 8?

Also, does this map.layer[layername]=... syntax still work in MapServer 8? The documentation at https://mapserver.org/cgi/controls.html#using-mapserver-version-8 <https://mapserver.org/cgi/controls.html#using-mapserver-version-8> suggests it might no longer work for MapServer 8 (based on the heading "Using MapServer version < 8"), but the documentation at https://mapserver.org/pdf/MapServer.pdf <https://mapserver.org/pdf/MapServer.pdf> shows the same examples with the heading "Using MapServer version <= 8" on page 1065 of the PDF, so I'm unsure if this is still intended to work in MapServer 8.

Thank you,
Matt

_______________________________________________
MapServer-users mailing list
MapServer-users@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/mapserver-users

_______________________________________________
MapServer-users mailing list
MapServer-users@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/mapserver-users

Reply via email to