Ik probeer voor een vraagstuk de hoogte te bepalen dmv een GetFeatureInfo op een WMS. Zelf heb ik hier absoluut geen kennis van dus ben flink op zoek geweest op o.a. dit forum, maar helaas kom ik niet tot het gewenste succes en zou dus wel een beetje hulp kunnen gebruiken.
De eerste uitdaging voor mij is om voor één x/y-coördinaat de hoogte te bepalen.
De tweede is #1 toepassen op een kleine 157.000 records
Hoi @Rvdw93, de QGIS PDOK services plugin bevat een AHN3 processing tool waarmee je eenvoudig hoogte kan ophalen voor een collectie punten/xy-coordinaten.
Zie de broncode (Python) hier ter inspiratie als je zelf een eigen implementatie wil bouwen. De PDOK services plugin maakt gebruik van de WCS (Web Coverage Service) en haalt hoogtewaardes op door middel van Geotiff bestanden. In plaats van raster bestand van 1x1 pixel, haalt de tool een raster bestand van 2x2 pixels, aangezien het niet mogelijk is een raster bestand van 1x1 pixel op te halen in de WCS door een bug in MapServer.
Hoi @antonbakker
Helaas heb ik geen QGIS tot mijn beschikking, maar ArcGis Pro. Verder heb ik ook FME tot mijn beschikking om een dergelijk vraagstuk te benaderen.
Ik heb geen oplossing voor FME en/of ArcGIS Pro, want ik heb daar zelf geen beschikking over.
Een alternatieve oplossingsrichting is om de AHN3 volledig te downloaden en met de bronbestanden zelf aan de slag te gaan. Zie PDOK - AHN3 downloads. Kan misschien uit gezien je de hoogte wil ophalen voor 157.000 records.
Het DTM in 0,5 meter resolutie gaat om 1371 bestanden a ~300MB per stuk is ~400GB
Het DTM in 5 meter resolutie gaat om 1371 bestanden a ~4MB per stuk is ~5GB
In FME heb je de pointsonrastervalue extractor die dit voor je kan doen als je eerst met een featurereader via de WCS het AHN binnenhaalt. Laat maar weten als je er hiermee niet uit komt.
Hoi @Hashtaggeodata
Ik denk dat dit wel een mogelijke oplossing biedt, maar als ik het AHN laad in FME krijg ik slechts één record - klopt dit? Als ik dan een enkel punt-object laadt en hier d.m.v. een PointOnRasterValueExtractor (hele mond vol) de hoogte uit probeer te halen krijg ik deze niet terug.
Ik heb een volle dag, ik kan je later wat uitgebreider beantwoorden, maar misschien helpt dit je voldoende op weg, uit mijn hoofd:
punten inladen (zorg dat de punten een uniek ID hebben, desnoods met de uuid-generator)
buffertje rondom de punten
boundingboxreplacer > die als input voor je featurereader gebruiken om de het AHN per punt binnen te halen. Zorg dat de unieke ID van de punten meekomt bij de attributehandling)
Pointonraster value extractor (group by op het unieke ID)
Met een attributecreator of -manager kan je vervolgens de z toevoegen aan de punten.