Reputation: 148
I am trying to call a WMS service but the BBOX parameter doesn't seem to be working. The problem is that BBOX value isn't taken into account and still the whole world is shown. My code is as follows
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 }) });
Here follows the codepen
Upvotes: 1
Views: 978
Reputation: 17962
Some parameters are set dynamically and any values you set will be overridden. OpenLayers sets BBOX to match the viewport. See https://openlayers.org/en/v4.6.5/apidoc/ol.source.ImageWMS.html
WIDTH, HEIGHT, BBOX and CRS (SRS for WMS version < 1.3.0) will be set dynamically.
You can restrict the extent with the layer's extent option:
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'),
})
Upvotes: 3