通过请求参数设置 wms 样式

ale*_*bro 4 geoserver

一般来说:
是否可以根据 cql 过滤器或其他参数从单个 wms 查询中对某些 wms 功能进行不同的样式设置?
特别是:
在 wms 查询中,返回特征集合的栅格(即样式为红点的点),wms 功能
我希望 geoserver 对 wms 请求发送的 http-req-parameter 标识的一个特定功能进行不同的样式(蓝点)
在此处输入图片说明
使用默认样式将其他样式保留在集合中,
并避免两个 wms 重叠:
在此处输入图片说明

Ian*_*ton 5

比@Fmba 的建议更快(也可能更简单)的方法是请求图层两次,一次使用默认颜色,第二次使用过滤器和高亮样式。您可以在一个请求中执行此操作,也可以发出两个请求,以便浏览器可以缓存默认图层并仅重新获取高光。

对于第一个请求,它看起来像:

http://....../wms?service=wms&.....&layers=dots,dots&styles=,highlight&cql_filter=INCLUDE;INTERSECT(the_geom,%20POINT%20(-74.817265%2040.5296504))
Run Code Online (Sandbox Code Playgroud)

这会请求图层(点)两次,一次使用默认样式(或者您也可以在此处使用命名样式),然后使用高亮样式。最后,您必须提供两个过滤器(第一个是 true 以返回所有内容)。

而在第二个中,您只需像往常一样添加另一个图层。