Suite

Mettre en surbrillance une entité dans une image de carte WMS


Pour la demande suivante, comment puis-je produire un image PNG unique mettre en évidence une seule caractéristique ? Par exemple GMUID=84

Voici l'image du fond de carte

https://maps.huntscore.com/geoserver/colorado/wms?service=WMS&version=1.1.0&request=GetMap&layers=colorado:BigGameGMUBoundaries12092014&styles=MiniMap_Outlines&bbox=139992.54690000042,4094064.75763240.4375,&h=EPH=EPimage&wi26913,4546735.0&wi %2Fpng

Voici la fonctionnalité mise en évidence

http://maps.huntscore.com:8080/geoserver/colorado/wms?service=WMS&version=1.1.0&request=GetMap&layers=colorado:BigGameGMUBoundaries12092014&CQL_FILTER=GMUID=84&styles=MiniMap_Polygon&bbox=13940932.50690000042,5,74097463469000445 =EPSG:26913&format=image%2Fpng


Un service WFS est également disponible, qui vous permet d'accéder aux données sous-jacentes que vous voyez dans la réponse WMS. Vous pouvez parcourir tous ces éléments ici dans l'interface Geoserver :https://maps.huntscore.com/geoserver/web/?wicket:bookmarkablePage=:org.geoserver.web.demo.MapPreviewPage

Ensuite, vous pouvez faire une demande uniquement pour la fonctionnalité que vous souhaitez, ce qui est bien couvert par les réponses à cette question : Passer les paramètres de filtre à GeoServer WFS via une URL ?

La requête que vous voulez est quelque chose comme ceci (celle-ci renvoie GeoJSON):https://maps.huntscore.com/geoserver/ows?service=wfs&version=1.0.0&request=getfeature&typename=colorado:BigGameGMUBoundaries12092014&CQL_FILTER=GMUID=84&outputFormat=application/json

Vous devrez appliquer votre propre style une fois que vous aurez les fonctionnalités que vous recherchez. La meilleure chose à faire est peut-être de continuer à demander l'image WMS comme vous le faites déjà, mais également de superposer le résultat de la demande WFS sur le client et de le styler comme bon vous semble.

EDIT : pour rester dans WMS, ce que vous voulez faire est de spécifier plusieurs calques (enfin, le même calque deux fois) et d'appliquer deux filtres et deux styles :

http://maps.huntscore.com:8080/geoserver/colorado/wms?service=WMS&version=1.1.0&request=GetMap&layers=colorado:BigGameGMUBoundaries12092014,BigGameGMUBoundaries12092014&cql_filter=GMUID%3E0;GMUID=8446&styles4,BigGameGMUBoundaries12092014&cql_filter=GMUID%3E0;GMUID=8446&styles 763240.4375,4546735.0&width=768&height=557&srs=EPSG:26913&format=image%2Fpng


Si le service WMS prend en charge SLD, vous pouvez faire une demande GetMap qui fournit un style SLD à l'aide des paramètres SLD_BODY ou SLD, qui colorent l'image de la carte en fonction d'un aspect unique du polygone en question.