Deel 2: Automatisch repareren van gaten en overlap Architectuur Standaardoplossing voor automatisch repareren van toologie bestaat niet ■J I f - Jry-' V Fig. 6 Detectie van gaten en overlap in de BGT-testdata. Het grootste gat dat door onze tooi gevonden werd, was zo'n 5 cm breed. Naast dat het automatische repareren van topologische fouten efficiënt is, omdat het veel tijd bespaart, heeft het automatisch repareren binnen BGT-context nog twee extra voordelen.Ten eerste wordt de afstem ming tussen bronhouders die nodig is voor objectafbakeningen op de bronhoudersgren- zen (zoals genoemd in de BGT-catalogus) objectiever geregeld in een automatisch proces dan wanneer over ieder object dat niet aansluit overleg moet plaatsvinden. Ten tweede kan het automatische proces ervoor zorgen dat de topologische regels in heel Nederland eenduidig en op dezelfde manier worden toegepast, zie bijvoorbeeld de discussie binnen de BGT-Linkedln groep "Mogen BGT-vlakobjecten op hetzelfde niveau ongelijk aan nul elkaar overlappen?" Het repareren met onze tooi geschiedt als volgt. Bij het repareren krijgen de driehoeken die eerder gevormd en gelabeld werden een nieuw label (figuur 5e). Welk label is afhanke lijk van lokale criteria, de huidige tooi bevat zes mogelijkheden om labels toe te wijzen, waarvan sommige al relevant zijn voor de BGT. Zo kunnen bepaalde typen objecten belangrijker zijn om in oorspronkelijke staat te behouden dan andereen daardoor een hogere prioriteit krijgen of kunnen objecten van de ene bron houder een hogere prioriteit krijgen, bijvoorbeeld wanneer deze een grotere posi tionele nauwkeurigheid heeft. Ook kan ervoor gekozen worden om bij grotere gaten of overlap niets te doen maar wel een vlaggetje te plaatsen, omdat dit zou kunnen wijzen op objecten waarvoor er nog geen bronhouder is respectievelijk er meerdere bronhouders zijn. Figuur 7 laat zien, dat afhankelijk van de gekozen reparatiemogelijkheid, er verschillende oplossingen zijn. Figuur 7b en 7c tonen ieder een oplossing van de inconsistente planaire partitie in figuur 7a, waarbij in figuur 7b hogere prioriteit (d.w.z. meer vertrouwen) wordt gegeven aan de groene data en in figuur 7c aan de paarse data. In een tweede stap worden de polygonen één voor één gereconstrueerd aan de hand van de nieuwe labels (figuur sf) waarbij een algo ritme wordt gebruikt dat zowel gesloten ringen maakt van de buitenranden als van de binnenringen van polygonen. De polygonen in het testgebied in figuur 6 zijn op deze manier gerepareerd en de foutloze data is inmiddels beschikbaar als voorbeeld BGT data via www.geonovum.nl/dossiers/ bgtimgeo/destandaard. De tool pprepair is ontwikkeld in C++ en gebruikt een aantal externe bibliotheken. C++ is geselecteerd om goede controle te hebben over bijvoorbeeld memory management. De tooi maakt gebruik van de OGR Simple Features Library1 voor het inlezen van een grote variëteit aan GIS formaten en de CGAL Library2die robuuste geometrische data structuren en operaties kent. De code is als open source onder GPL- Fig. 7a Fig. 7 Een situatie met gaten en overlap kan op meerdere manieren door pprepair worden gerepareerd. Geo-lnfo 2012-8 7

Digitale Tijdschriftenarchief Stichting De Hollandse Cirkel en Geo Informatie Nederland

Geo-Info | 2012 | | pagina 9