2017-06-08 246 views
0

我试图从Geoserver过滤/剪辑由Web地图服务提供的栅格。我如何过滤/剪辑由WMS提供的栅格 - Geoserver

我不想基于多边形剪辑;我想根据一个值进行过滤,使得低于此值的所有光栅像素都是黑色或透明的。

据我所知,我不能使用cql_filter,因为它只适用于WFS功能请求而不适用于WMS光栅图像。

也许你有一个想法如何解决我的问题。

回答

1

WMS确实不是返回您的数据,它会返回您的数据的图片

因此,有两种可能性:

  1. 您使用Web Coverage Service (WCS)请求将返回您在光栅的实际数据。把它想象成一个WFS的栅格。 GeoServer manual covers the mechanics of making a requestDemos下有一个请求生成器供您进行试验。我很确定这只会让你按矩形区域进行子集划分,尽管你的客户端可以自由地对返回的数据进行更复杂的操作。

  2. 您可以将此视为一种造型练习,在这种情况下,应该可以设置执行所需操作的SLD样式。您将需要使用spatial filter来裁剪底层栅格,并根据其是否为真来应用两个规则。如果需要,您甚至可以将请求中的多边形作为environment variable传递。

+0

谢谢您的详细解答!由于我只想在客户端显示过滤图像,所以我使用了第二个建议。为此,我使用动态SLD样式并将此样式作为SLD或SLD_BODY参数附加到WMS请求。使用SLD或SLD_BODY参数时,不应提供图层参数,因为该图层的名称已由SLD作为NamedLayer提供。 –

相关问题