QGIS-plugin: BGT_Downloader (aankondiging)

QGIS-plugin: BGT_Downloader

Zoals ik al aankondigde in dit forum-bericht is de BGT_downloaderplugin beschikbaar gekomen. Jaren heb ik met veel plezier gebruik gemaakt van de plugin van @marco_duiker : de BGTImport-plugin. Met de komst van de BGT-OGC-API Features-service ontstond de mogelijkheid om de download en conversie in één plugin onder te brengen.

Functionaliteit

Met deze plugin kan je:

  • Een geopackage opgeven voor opslag.
  • Een uitsnede instellen voor je download. Standaard is dat de uitsnede van je kaartvenster. De uitgebreide QGIS-extent-widget maakt veel manieren mogelijk om een extent in te stellen.
  • Aangeven welke features er van de OAPIF gedownload moeten worden.
    De plugin filtert alleen de actuele objecten (eind_registratie IS NULL).
  • Aangeven of je layers in de geopackage wilt aanvullen met features of layers wilt overschrijven.
  • Aangeven of je de layers aan je project toegevoegd wilt hebben.

De aanvul-optie is zeer flexibel. De plugin checkt op het voorkomen van dubbele features op basis van hun ID’s. Zoomen, pannen, nieuwe extent instellen, download starten: op die manier vul je incrimenteel je layers aan met BGT-features.

Beschikbaarheid

De plugin is beschikbaar:

  • Via Github.
  • Via de QGIS-plugin-manager.

Veelgestelde vragen

Vraag

  • Ja maar Wim, waarom maak je geen downloadtool voor mijn favo-OAPIF-service?
  • Ja maar Wim, waarom maak je geen generieke downloadtool voor OAPIF-services? Er komen per maand nieuwe OAPIF-services beschikbaar bij de PDOK.

Eh, geen tijd? En ik ben geen programmeur.
Een generieke tool vraagt om iets als een beheeromgeving voor het registreren van OAPIF-services, met daarin de servicenaam, url, unieke id, WHERE-statement. Gaat me te veel tijd kosten.

Vraag

  • En QGIS4 in het najaar?

Deze plugin is geschikt voor QGIS4 cq QT6. Doorlopen met een QT5-naar-QT6-pythonscript van de QGIS-mensen. Daarna kort getest op een QGIS-QT6-installatie.

5 likes

Mooie ontwikkeling!

De eind_registratie IS NULL where clause heeft volgens mij alleen client-side effect. Dus alle BGT features worden inclusief historie gedownload en daarna gefilterd zodat enkel de actuele overblijven.

Je kan dit ook door de API zelf laten doen door een datetime parameter mee te geven. Dat zou een mooie optimalisatie zijn. Zie ook De BGT opvragen via API en wegschrijven met ogr2ogr - 2 van rkettelerij. In principe zou het voldoende moeten zijn om -oo DATETIME=2025-08-19T00:00:00.000Z mee te geven en dan de datum van vandaag of in de toekomst te gebruiken. Deze optie is beschikbaar vanaf GDAL 3.10.

1 like

Dank je voor de tip.
Ja, ik wist dat eind_registratie IS NULL cliënt side wordt afgehandeld. Dit zou een leuke zijn om uit te proberen. Zien dat ik daar een moment voor weet te vinden.

1 like

Tip van @rkettelerij uitgevoerd. OGC API Features-call wordt nu uitgevoerd met een DATETIME-parameter. De huidige datum wordt als waarde aan de parameter meegegeven.

Bij goedkeuring verschijnt deze verbetering binnenkort in de plugin-manager van QGIS.

2 likes