Mais

Camadas não combinam em OpenLayers


No meu Openlayers 3.9.0, eu uso o Bing Maps e as camadas OSM. Ambos sãoEPSG 3857.

var layer = new ol.layer.Tile ({fonte: new ol.source.OSM ({})}); var bingMapsAerial = new ol.layer.Tile ({source: new ol.source.BingMaps ({key: '////', imagerySet: 'AerialWithLabels'})});

Eu defini a extensão em que as camadas do mastro se encaixam

var textent = ol.proj.transformExtent ([2297128.5, 4618333, 2459120.25, 4763120], 'EPSG: 900913', 'EPSG: 3857');

Eu também defini uma camada de PostGIS

var ait = new ol.layer.Tile ({extension: textent, source: new ol.source.TileWMS ({url: 'http: // localhost: 8080 / geoserver / mymap / wms?', params: {'LAYERS' : 'mymap: polygon, mymap: line', 'TILED': true, 'VERSION': '1.3.0', 'FORMAT': 'image / png', 'CRS': 'EPSG: 3857'}, serverType: 'geoserver'})})

Minha visão é

var view = new ol.View ({center: center, extension: textent, zoom: 6, maxZoom: 20});

e meu mapa

var map = new ol.Map ({target: 'map', layers: [bingMapsAerial, layer, ait], view: view}); map.getView (). fit (textent, map.getSize ());

A camada de ladrilho raster está emEPSG 900913em PostGIS e Geoserver dizEPSG: 900913comoSRS nativoeSRS declarado. Ambospolígonoelinhaas camadas que compõem a camada do ladrilho são ligeiramente diferentesCaixa delimitadora nativaeLat / Lon Bounding Box, mas eles renderizam a mesma região espacial. Ambospolígonoelinhacamadas têmNíveis de zoom publicadoseNíveis de zoom em cachedefinido como 0 -20 no Geoserver para coincidir com as configurações de visualização do Openlayers

Não sãoEPSG 900913eEPSG 3857deveria ser o mesmo?

Ambas as camadas Bing e OSM parecem boas, mas a camada de mosaico parece menor do que as outras duas.

Como eu prossigo? Estou faltando alguma coisa, uma configuração ou var? Existe um hack? Tenho que converter os dados PostGIS?


Descobri que as camadas WMS desalinhadas geralmente são devidas a diferenças entre o cache e a configuração do cliente.

GeoWebCache, o servidor de cache integrado com GeoServer, irá aceitar silenciosamente uma diferença de 10% entre a resolução de cache mais próxima e a resolução solicitada.

Eu desabilitaria o cache inteiramente em seu servidor de blocos local para ver se isso corrige seu problema. Em caso afirmativo, você confirmou que é um problema de cache e pode investigá-lo mais detalhadamente.


Assista o vídeo: Openlayers 6 Tutorial #6 - Layer Switcher (Outubro 2021).