2015-07-14 2 views
0

У меня есть служба размещения экземпляров окружения GeoServer 2.5 в EPSG: 4326 и потребляется картой OpenLayers 3 с проекцией EPSG: 3857 по умолчанию. Все работает отлично с базовым слоем wms, но для фрагментации пузырьков и меток требуется использовать одномодовые или мета-мозаичные WMS-запросы.Перезаписать автоматически вычисляемые свойства запроса TileWMS в Open Layers 3

Я строю объект слоя с требуемыми свойствами геосервера, но OpenLayers перезаписывает многие из них, которые, как я думаю, предотвращают фактическую работу Meta-Tiling.

Это отлично работало в Листовке, поэтому я знаю, что на GeoServer нет проблемы, поэтому мне что-то не хватает. Буду признателен за любую оказанную помощь.

var mapBounds = this.getCurrentBounds('EPSG:4326'); 
    var mapSWOrigin = [mapBounds._southWest.lng, mapBounds._southWest.lat].toString(); 

    var wmsLayer = new ol.layer.Tile({ 
        extent: [-20026376.39, -20048966.10, 20026376.39, 20048966.10], //epsg:3857 extent 
        preload: true, 
        source: new ol.source.TileWMS({ 
         url: window.location.origin+"/geoserver/wms/", 
         params: { 
          'LAYERS': geoserverName, 
          'VERSION': '1.3', 
          'SRS': 'EPSG:4326', // THIS GETS OVERWRITTEN. also tried EPSG:3857 
          'BBOX': extent, //THIS GETS OVERWRITTEN. Tried extent of the current state of the map and the extent of the projection (ex: [21.99937, -18.07947, 33.7057, -8.22436]) 
          'TILED': true, 
          'STYLES': layer.getSldName() || "", 
          'TILESIZE': 256, 
          'FORMAT': 'image/png', 
          'TILESORIGIN': mapSWOrigin 
         }, 
         serverType: 'geoserver' 
        }), 
        visible: true 
      }); 

Полученный запрос захваченный из консоли браузера:

https://localhost:8443/geoserver/wms/?SERVICE=WMS 
&VERSION=1.3.0 
&REQUEST=GetMap 
&FORMAT=image%2Fpng 
&TRANSPARENT=true 
&LAYERS=geodashboard%3Alv_sjym3xbpypz4un9nm3xnvy6873p1k1nn_1psl34vde5 
&BBOX=3757032.814272985%2C-1252344.271424327%2C5009377.085697313%2C6.984919309616089e-10 // NOTICE THIS IS NOT EPSG:4326 UNITS 
&TILED=true 
&STYLES=lv_sjym3xbpypz4un9nm3xnvy6873p1k1nn_1psl34vde5 
&TILESIZE=256 
&TILESORIGIN=9.428462734375003%2C-18.869002237258456 
&WIDTH=282 
&HEIGHT=282 
&CRS=EPSG%3A3857 // NOTICE THIS IS NOT EPSG:4326 
&FORMAT_OPTIONS=dpi%3A99 
+0

в думаю, что этот вопрос должен быть в http://gis.stackexchange.com. –

ответ

0

Вы используете SRS вместо CRS, которая необходима для WMS 1.3.

С наилучшими пожеланиями, Gerhard

+0

Вы должны запросить слой в проекции карты, поэтому OpenLayers верен. –

+0

@Gerhard - Спасибо, но я уже пробовал использовать CRS. Извините, что не указал, что в вопросе. – jmapping

+0

@iant - Спасибо, но я тоже это пробовал. – jmapping

 Смежные вопросы

  • Нет связанных вопросов^_^