Mehr

Ebenen stimmen bei OpenLayers nicht überein


In meinen Openlayers 3.9.0 verwende ich Bing Maps und OSM-Layer. Sie sind beideEPSG 3857.

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

Ich stelle das Maß ein, in dem der Mast hineinpasst

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

Ich habe auch einen Layer von PostGIS eingestellt

var ait = new ol.layer.Tile({ Extent: 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' }) })

Meine Ansicht ist

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

und meine Karte

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

Der Rasterkachel-Layer ist inEPSG 900913in PostGIS und Geoserver sagtEPSG:900913wieNatives SRSundDeklarierte SRS. BeidePolygonundLinieSchichten, aus denen sich die Fliesenschicht zusammensetzt, unterscheiden sich geringfügigNativer BegrenzungsrahmenundBreiten-/Längenbegrenzungsrahmen, aber sie geben denselben räumlichen Bereich wieder. BeidePolygonundLinieSchichten habenVeröffentlichte ZoomstufenundZwischengespeicherte Zoomstufenim Geoserver auf 0 -20 gesetzt, um den Einstellungen der Openlayers-Ansicht zu entsprechen

Sind nichtEPSG 900913undEPSG 3857soll gleich sein?

Sowohl Bing- als auch OSM-Ebenen sehen in Ordnung aus, aber die Kachelebene erscheint kleiner als die anderen beiden.

Wie gehe ich vor? Übersehe ich etwas, eine Einstellung oder var? Gibt es einen Hacker? Muss ich die PostGIS-Daten konvertieren?


Ich habe festgestellt, dass falsch ausgerichtete WMS-Layer oft auf Unterschiede zwischen der Cache- und Client-Konfiguration zurückzuführen sind.

GeoWebCache, der in GeoServer integrierte Cache-Server, akzeptiert stillschweigend einen Unterschied von 10 % zwischen der nächstgelegenen zwischengespeicherten Auflösung und der angeforderten Auflösung.

Ich würde das Caching auf Ihrem lokalen Kachelserver vollständig deaktivieren, um zu sehen, ob Ihr Problem dadurch behoben wird. Wenn dies der Fall ist, haben Sie bestätigt, dass es sich um ein Cache-Problem handelt, und können es weiter untersuchen.


Schau das Video: GeoServer. OpenLayers. Apache (Oktober 2021).