I have a shapefile with building footprint polygons. Many of the polygons have holes/inner rings within them (I'm not sure of the correct term in Grass). These import correctly into Grass GIS. I aim to drape the polygons over a DEM, extrude and export them and the DEM for use in a realtime 3D visualisation.
The following workflow is functional, except where
v.extrude messes up the geometry:
- import vector (allowing cleaning) and raster data
g.regionto the polygon layer
- drape the polygons on the DEM using
- extrude them using
- output the layer using
My problem is that the extrusion process ignores the holes in the polygons and creates geometry for the outer ring only. This happens whether or not
v.drape is used beforehand.
I've tried the following (unsuccessful) ideas already:
- generating centroids for the 'holes' first (this just creates a new polygon 'separate' from the outer ring).
chbridgeoption, hoping that might add a bridge from outer to inner ring.
Another idea might be to break all the polygons down to triangles first, but I hate to think how complex the 3D geometry would be afterwards! Likewise, manually adding bridging lines to the polygons is not practical given the size of the dataset.
Am I missing something? I'm happy to use Grass and QGIS. Many thanks