繁体   English   中英

如何在OpenLayers 3中刷新WMS图层?

[英]How to refresh a WMS layer in OpenLayers 3?

我有一个wms层,创建如下:

layer = new ol.layer.Tile({
  visible: true,
  source: new ol.source.TileWMS({
      url: 'http://localhost:8085/geoserver/accent/wms',
      params: {
          'FORMAT': 'image/png', 
          'VERSION': '1.1.1',
           tiled: true,
           STYLES: '',
           LAYERS: 'accent:layer_' + layer_id + '_',
           tilesOrigin: 0 + "," + 0.0000000000014415
      }
   })
});

我的应用程序中有一些按钮,可用来更改图层存储(进行移位,增加平铺的级别数等)。 因此,要使这些更改可见,我需要一种“刷新”该层的方法,以便它将使服务器请求并重新绘制自身。 好像在旧版OL2中一样,有一个不错的方法:

myWMSLayer.redraw(true);

但是我不知道如何在OL3中达到相同的效果。 谢谢!

为此,您可以在图层源上使用updateParams

var params = layer.getSource().getParams();
layer.getSource().updateParams(params);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM