Voor een bestaand systeem wil ik gebruik maken van de WMTS tiles (brtachtergrondkaart). Hierbij ben ik gebonden aan Openlayers 2.10 en het is geen optie om naar een recentere versie te gaan (ook al zou ik dat heel graag willen). Het systeem maakt ook gebruik van het RD coördinaatstelsel (EPSG:28992).
In een kleine POC kan ik wel een kaart tevoorschijn toveren, echter, de coordinaten lijken niet te kloppen.
Nadat de pagina geladen is, wordt de kaart getoond ergens in het midden van ons land, maar de coordinaten zouden Rotterdam moeten laten zien…
Met Openlayers 4, vanuit een voorbeeld dat hier op het forum is gepost, werkt het wel zoals verwacht.
Misschien zie ik iets over het hoofd of … begrijp ik er helemaal niets van ?
Ik ben me ervan bewust dat in de “map” een andere projection staat. Echter, als ik deze vervang door “EPSG:28992” treedt er een fout op. Ik kan me iets herinneren over een custom projection maken… Maar ik ben toch niet de eerste die dit wil doen?
De gebruikte code:
var map;
function init() {
map = new OpenLayers.Map({
div: 'map',
projection: 'EPSG:900913'
});
var osm = new OpenLayers.Layer.OSM();
var matrixIds = new Array(15);
for (var i = 0; i < matrixIds.length; ++i) {
matrixIds[i] = "EPSG:28992:" + i;
}
var wmts = new OpenLayers.Layer.WMTS({
name: 'PDOK WMTS OL2',
url: 'http://geodata.nationaalgeoregister.nl/tiles/service/wmts?',
layer: 'brtachtergrondkaart',
matrixSet: 'EPSG:28992',
matrixIds: matrixIds,
format: 'image/png',
style: '_null',
isBaseLayer: true
});
map.addLayers([wmts, osm]);
map.addControl(new OpenLayers.Control.LayerSwitcher());
map.setCenter(new OpenLayers.LonLat(91836, 440066), 10);
}