我试图在Openlayers 3
地图中添加图层。这是我要插入的:
new ol.layer.Image({ name: 'cartografia', style: 'cartografia', visible: true, source: new ol.source.ImageWMS({ url: 'http://www.geo.euskadi.net/arcgis/services/U11_AGS_WMS_Cartografia/MapServer/WMSServer?', params: { 'LAYERS': '1', 'STYLES': 'default' }, serverType: 'geoserver' }) })
当我转到webpage时,我可以看到XML,但我无法插入图层
我做错了什么?
答案 0 :(得分:1)
我看了一下这个WMS,一切似乎都很好。我注意到,如果我将我的投影设置为3857,则不会抛出任何错误。此WMS不支持您提到的图层。确保您使用WMS上所需图层的受支持投影。
<Name>1</Name>
<Title>Itzalak / Sombras MDT LIDAR 2012 5000</Title>
<Abstract>Itzalak / Sombras MDT LIDAR 2012 5000</Abstract>
<CRS>CRS:84</CRS>
<CRS>EPSG:4326</CRS>
<CRS>EPSG:23030</CRS>
<CRS>EPSG:25830</CRS>
您可以看到地图uisng 4326的示例。在下面的链接中,
http://openlayers.org/en/v3.1.1/examples/epsg-4326.html
我使用以下代码将图层添加到使用EPSG的地图:4326,
var test = new ol.layer.Tile({
source: new ol.source.TileWMS({
url: 'http://www.geo.euskadi.net/arcgis/services/U11_AGS_WMS_Cartografia/MapServer/WMSServer',
params: {
'LAYERS': '1'
}
})
})
我在西班牙得到了以下结果。
答案 1 :(得分:0)
另一个问题是“serverType:'geoserver'”,因为WMS不是由GeoServer托管,而是由ESRI ArcGIS Server托管。
如果您保留serverType undefined并在视图选项中设置投影:'EPSG:4326',您的代码将有效。