WMTS-request BGT lege kaarten

Hallo,

Ik probeer een wmts-request uit te voeren op de dataset van de bgt maar ik krijg alleen maar ‘lege’ afbeeldingen binnen. Nu heb ik de waarden voor de tilerow, tilecol en tilematrix te veranderen maar iedere keer wordt een lege png opgeslagen. Weet iemand wat er fout gaat in de code hieronder?

De code die ik gebruik is:

url=“https://service.pdok.nl/lv/bgt/wmts/v1_0?request=GetTile&VERSION=1.0.0&service=WMTS&layer=standaardvisualisatie&tilerow=0&tilecol=0&format=image/png&TileMatrix=0&tilematrixset=EPSG:28992

response = requests.get(url)

if response.status_code == 200:
with open(r’C:\Users\donny\Downloads\testii.png’, “wb”) as f:
f.write(response.content)
OUT=“Tile image successfully written to disk”
else:
OUT=[response.status_code,response.text]

De tiles zijn in rijen en kolommen genummerd vanaf linksboven. Jij vraagt de tile 0,0 op, dan zit je ergens in de Noordzee. Verder moet je je zoomniveau aangeven in de TileMatrix parameter, die is nu ook 0. En de BGT is alleen beschikbaar als je ver ingezoomd bent.

Als ik de TileCol, TileRow en TileMatrix waardes invul in jouw url, krijg ik netjes een plaatje:

https://service.pdok.nl/lv/bgt/wmts/v1_0?request=GetTile&VERSION=1.0.0&service=WMTS&layer=standaardvisualisatie&format=image/png&TileMatrix=EPSG:28992:13&tilematrixset=EPSG:28992&TileCol=3808&TileRow=3332

levert
image

Voor meer info over WMTS, en het Nederlandse WMTS Tiling schema, zie dit draadje:

Tot zover over WMTS. Mijn grootste vraag is eigenlijk: Wat probeer je te doen? Alle BGT-Tiles downloaden en naar je eigen schijf wegschrijven?

2 likes

Dank voor de toelichting! Ik probeer de request werkend te krijgen in dynamo for revit doormiddel van python zodat ik de Tiles straks georefereerd in mijn BIM-modellen kan krijgen. Hiervoor dien ik het eerst weg te schrijven naar mijn eigen schijf (quickfix).

Ah ok. Dan moet je dus twee dingen bepalen: het zoomniveau waarop je de BGT tiles zichtbaar wilt hebben (als dat meer is dan 1 zoomniveau, zou je ook meerdere niveaus kunnen downloaden - maar dan heb je wel wat schijfruimte nodig), en het gebied. Dat gebied moet je vervolgens vertalen naal Tilerows en Tilecols, waarvoor je het beste de specs kunt doorspitten (zie de thread die ik eerder linkte - daar staat een link naar de NL specs). Vervolgens een loopje over je rows/cols, met zoomniveau ingevuld.

Beetje uitzoekwerk, maar lijkt me goed te doen. En vragen staat hier altijd vrij (en zelfs op zondag zijn er nog wel geogeeks als ik online :wink::smile:)

Haha geweldig! Ik ga het even proberen uit te zoeken. Mijn uitgangspunt is dat ik een boundingbox, om kan zetten naar de tilerow, tilecol en zoomlevel. Wat betreft de link met specs, is dat alleen voor Esri? Want als ik naar het xml document bij de wmts request van pdok kijk, zie ik hele andere zoomlevels.

Deze moet je hebben:

Hiermee publiceert PDOK de WMTS. De discussie in dat draadje ging over het feit dat dat net even anders is dan Esri een WMTS publiceert, en waarom. Maar dat is voor jouw casus niet zo interessant op dit moment.