WMS BBOX参数未显示框,但显示了整个世界

时间:2019-03-22 17:23:12

标签: mapping openlayers openlayers-3 wms

我正在尝试调用WMS服务,但BBOX参数似乎不起作用。问题是没有考虑BBOX值,仍然显示了整个世界。我的代码如下

map = new ol.Map({   target: 'map',   layers: [
    new ol.layer.Tile({
      source: new ol.source.OSM(),name:'Map'
    }),
    new ol.layer.Image({
      name:'Fires',
      source: new ol.source.ImageWMS({
        url: 'https://firms.modaps.eosdis.nasa.gov/wms',
        params: {'LAYERS': 'fires_viirs_24','MAP_KEY':'c25ad450306982d960f6dac44bc80059',
                 'COLORS':'127+9+9','SIZE':'10','SYMBOLS':'triangle',
                 'SRS':'EPSG:3857','WIDTH':'1024','BBOX':'18.808594,34.615127,29.047852,41.902277'}
      })
    })   ],   view: new ol.View({
    center: ol.proj.fromLonLat([23.8567, 38.5204]),
    zoom: 6   }) });

以下是codepen

1 个答案:

答案 0 :(得分:2)

某些参数是动态设置的,您设置的任何值都将被覆盖。 OpenLayers设置BBOX以匹配视口。参见https://openlayers.org/en/v4.6.5/apidoc/ol.source.ImageWMS.html

  

宽度,高度,BBOX和CRS(WMS版本<1.3.0的SRS)将被设置   动态地

您可以使用图层的范围选项限制范围:

 new ol.layer.Image({
      name:'Fires',
      source: new ol.source.ImageWMS({
        url: 'https://firms.modaps.eosdis.nasa.gov/wms',
        params: {'LAYERS': 'fires_viirs_24','MAP_KEY':'c25ad450306982d960f6dac44bc80059',
                 'COLORS':'127+9+9','SIZE':'10','SYMBOLS':'triangle', VERSION: '1.1.0'
                 },
        projection:'EPSG:3857',
      }),
      extent: ol.proj.transformExtent([18.808594,34.615127,29.047852,41.902277],'EPSG:4326','EPSG:3857'),
    })