Merge pull request #12373 from mike-000/patch-1

Rework TileDebug to allow TMS coordinates and to fix reprojection
This commit is contained in:
Andreas Hocevar
2021-06-29 14:28:09 +02:00
committed by GitHub
9 changed files with 202 additions and 139 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

View File

@@ -0,0 +1,49 @@
import Map from '../../../../src/ol/Map.js';
import TileLayer from '../../../../src/ol/layer/Tile.js';
import View from '../../../../src/ol/View.js';
import {TileDebug, XYZ} from '../../../../src/ol/source.js';
import {createForProjection, createXYZ} from '../../../../src/ol/tilegrid.js';
import {get, toLonLat} from '../../../../src/ol/proj.js';
const tileGrid = createXYZ();
const extent = tileGrid.getTileCoordExtent([5, 5, 12]);
const center = [(extent[0] + extent[2]) / 2, extent[1]];
const source = new XYZ({
transition: 0,
minZoom: 5,
maxZoom: 5,
url: '/data/tiles/osm/{z}/{x}/{y}.png',
});
const sourceDebug = new TileDebug({tileGrid: source.getTileGrid()});
source.setTileGridForProjection(
get('EPSG:4326'),
createForProjection(get('EPSG:4326'), 7, [64, 64])
);
sourceDebug.setTileGridForProjection(
get('EPSG:4326'),
createForProjection(get('EPSG:4326'), 7, [64, 64])
);
new Map({
pixelRatio: 1,
target: 'map',
layers: [
new TileLayer({
source: source,
}),
new TileLayer({
source: sourceDebug,
}),
],
view: new View({
projection: 'EPSG:4326',
center: toLonLat(center),
zoom: 5,
}),
});
render();