BRT in webmercator, krijg het niet voor elkaar

Afgelopen juni is de BRT ook in WebMercator beschikbaar gekomen, zie https://www.pdok.nl/nl/node/5572
Ik heb dat toen geprobeerd en het werkte.
Nu probeer ik het weer, maar ik krijg het niet voor elkaar.

Het lijkt erop dat de link anders is.
Dit is de RD versie, die geeft netjes heel NL terug:
https://geodata.nationaalgeoregister.nl/tiles/service/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=brtachtergrondkaart&STYLE=default&FORMAT=image/png8&TILEMATRIXSET=EPSG:28992&TILEMATRIX=EPSG:28992:0&TILEROW=0&TILECOL=0

Als ik 28992 vervang door 3857, krijg ik een wit/leeg plaatje terug:
https://geodata.nationaalgeoregister.nl/tiles/service/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=brtachtergrondkaart&STYLE=default&FORMAT=image/png&TILEMATRIXSET=EPSG:3857&TILEMATRIX=EPSG:3857:0&TILEROW=0&TILECOL=0

In de GetCapabillities (https://geodata.nationaalgeoregister.nl/tiles/service/wmts?request=GetCapabilities), staat wel dat 3857 wordt ondersteund.

Wat is de juiste URL om de BRT in EPSG:3857 terug te krijgen?

Hoi @pmeems

Je roept al de juiste URL aan, probleem is dat webmercator een compleet ander grid is (scope is de hele wereld, waar RD alleen Nederland is). Het simpelweg vervangen van EPSG:28992 met EPSG:3857 werkt dus niet, gezien je dan het EPSG:28992 grid gebruikt van EPSG:3857. (Op eerlijk te zijn werkt het wel, maar krijg je data van een compleet andere locatie. Waarin dit geval geen data is en dit dus een leeg plaatje oplevert)

Een request wat daadwerkelijk een (gevuld) plaatje teruggeeft is:
https://geodata.nationaalgeoregister.nl/tiles/service/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=brtachtergrondkaart&STYLE=default&FORMAT=image/png&TILEMATRIXSET=EPSG:3857&TILEMATRIX=06&TILEROW=20&TILECOL=33

Zoals je kan zien in de URL staat de TILEMATRIX op 6 en niet 0, vanaf dit ‘zoomniveau’ begint de data van Nederland.

Als je verder lijkt in de GetCapabilities zie onderin de TileMatrixSet opbouw van EPSG:3857 en hoe dit gebruikt moet worden (of geinterpreteerd door een applicatie als QGIS, ESRI, openlayers, enz…)

1 like

Bedankt @wouter.visscher voor je reactie.

Ik gebruik het voorbeeld van @emacgillavry om het voor elkaar te krijgen: Luchtfoto (RD) in OpenLayers 4 · GitHub
Maar het lukt nog niet helemaal.

Het gaat denk ik nog niet goed met de tileGrid.
Als origin gebruik ik [-20037508.342789244, -20037508.342789244, 20037508.342789244, 20037508.342789244],
als resolutions
[156543.03392804097, 78271.51696402048, 39135.75848201024, 19567.87924100512, 9783.93962050256, 4891.96981025128, 2445.98490512564, 1222.99245256282, 611.49622628141, 305.748113140705, 152.8740565703525, 76.43702828517625, 38.21851414258813, 19.109257071294063, 9.554628535647032, 4.777314267823516, 2.388657133911758, 1.194328566955879, 0.5971642834779395, 0.29858214173896974]
en als matrixIds
["00", "01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19"]

Als je nog suggesties hebt, lees ik ze graag.

Als ik het voorbeeld van @emacgillavry volg plus jouw wijzigingen is het enige wat nog ontbreekt de matrixSet: ‘EPSG:3857’ zetten in de ol.layer.Tile + de center en zoom ‘goed’ zetten.

 view: new ol.View({
    minZoom: 0,
    maxZoom: 20,
    projection: projection,
    center: [631711.827985, 6856275.890632],
    zoom: 6
})

En dan krijg je beeld, als het goed is…

Om de collectie aan te vullen is er nu ook een voorbeeld van de BRT-Achtergrondkaart in Web Mercator als WMTS-service in OpenLayers 4.

Bedankt @wouter.visscher en @emacgillavry voor jullie hulp en voorbeelden.
Ik gebruikte niet de juiste tileMatrixOrigin.
Nu gebruik ik ol.extent.getTopLeft(projection.getExtent() en het werkt!

1 like