AUTOMATIC REPAIR OF CITYGML LOD2 BUILDINGS USING SHRINK-WRAPPING
The LoD2 building models defined in CityGML are widely used in 3D city applications. The underlying geometry for such models is a GML solid (without interior shells), whose boundary should be a closed 2-manifold. However, this condition is often violated in practice because of the way LoD2 models are constructed and exchanged. Examples of the resulting errors are holes in the wall surface, intersecting and overlapping building parts etc. Those invalid models often cannot be accepted by downstream analytical applications that demand 2-manifold exterior shells for LoD2 building models. Unlike traditional local mesh repair approaches, this paper presents a global repair method for invalid LoD2 building models. Our method is based on the idea of shrink-wrapping a valid bounding surface to the invalid model. It starts by extracting the convex hull of a given model, all the faces of both the input model and the convex hull are treated as constraints in the subsequent tetrahedralization process. Defects like intersections and overlapping between polygons are also handled in the process. Then, based on a heuristic carving process, the bounding convex hull shrinks by incrementally deleting the insignificant boundary tetrahedra and wrapping the exact geometry of the building, holes and gaps are filled accordingly. The method makes no assumption on the input model, regardless of the type of geometric errors and the forms of the building. The output model is a watertight bounding shell, which is valid and represents the exterior of the building.