openlayers-3更改外部wms图层样式

时间:2015-07-09 11:08:35

标签: css openlayers-3

是否可以更改外部wms图层的样式?

我试图使用这一层:

https://firms.modaps.eosdis.nasa.gov/wms/?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=fires24&width=400&height=250&BBOX=-26,34,35,82

在openlayers3上使用此代码

fatal: Pathspec 'oh-my-zsh/custom' is in submodule 'oh-my-zsh'

图层显示正确,但没有我自己的样式。

是否可以这样做或用自定义图标替换?

1 个答案:

答案 0 :(得分:0)

您使用的WMS链接返回一个PNG文件,我相信OpenLayers无法在“事后”进行设置。一旦你得到它它是不可变的 - 它不是'数据',而是一个覆盖在底层地图源之上的透明图像。

你可以将一些参数传递给wms调用(正如你所做的那样),标准看起来它可以支持你将样式传递给WMS服务器的调用,以使它在渲染图像时使用它们。

我从geoserver网站(GIS服务器)获得了可能的参数列表 - http://docs.geoserver.org/stable/en/user/services/wms/reference.html

查看该链接,看起来sldsld_body参数可能有效。 SLD就像OL样式,但在XML中。这些样式表的详细信息在这里 - http://docs.geoserver.org/stable/en/user/styling/index.html#styling

我已经开始使用这个jsfiddle:https://jsfiddle.net/y7fj57dj/但它不能正常工作 - 它可能是我的SLD(我不能快速使用它)或者NASA服务器不知道怎么做/忽略它。

您可能需要联系NASA服务器管理员以确认您是否可以设置WMS呼叫的样式( support@earthdata.nasa.gov ,通过转至https://firms.modaps.eosdis.nasa.gov/wms/?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetCapabilities检索)。