3

I am working on a shapefile depicting English administrative divisions in QGIS 3.16.15. I began first by using the 'Fix geometries' tool to remove invalid geometries. Then, I used the topology editor to identity several thousand gaps and overlaps between the polygons. I am trying to fix these geometries using v.clean, but no matter what option I select, I continuously get the same string of errors in the log.

enter image description here

enter image description here

Then, the program crashes.

3
  • 1
    Can you share the shapefile?
    – BERA
    Dec 28, 2021 at 18:39
  • dropbox.com/s/v0hdgrhashddyj3/Hundreds.zip?dl=0 The dataset is the same one as this one from here, except I have fixed invalid geometries: archaeologydataservice.ac.uk/catalogue/adsdata/arch-3676-1/… Dec 28, 2021 at 18:49
  • Excepting the crash I just had this with a complex layer I had been given. It had lots of slivers, some overlaps, and many multiparts but valid geometry. I ended up converting it to singleparts, recalculating areas, then selecting for those under a size and running the eliminate tool. Looked good but it generated a few collect geometries, I think in the overlap polys locations which I couldn't get rid of. So I actually used the old convert to coverage and back at that point. Finally I ran the v.clean.
    – johns
    Dec 28, 2021 at 21:28

1 Answer 1

4

I dont know why your attempt does not work. But you should be able to fix it with a more manual approach:

Fix the holes:

  1. Dissolve
  2. Delete holes
  3. Difference with your start layer as input layer, and dissolved layer as overlay. Now you have the holes as small polygons
  4. Merge these with the input layer
  5. Select them by area and Eliminate

Self intersections:

  1. Union the output from above with itself (can take some time)
  2. Select the overlaps with "TerrID"<>"TerrID_2"
  3. Eliminate them

Then delete the extra fields created in the Union with Refactor fields (or do it manually)

enter image description here

3
  • This is brilliant for getting rid of the holes, thank you for your help. However, the overlaps still remain even after trying your method. Though the Union tool allows me to select the overlaps by expression, the Eliminate tool doesn't seem to erase them. Do you know if there is anything else I could perhaps try? Dec 29, 2021 at 1:03
  • Nice! How do you check that the overlaps remain?
    – BERA
    Dec 29, 2021 at 8:38
  • I used topology checker with the rule ‘must not have overlaps’ on the layer produced by the eliminate tool. It returned a few hundred overlaps. I zoomed into a couple of the errors and saw that they remain. Still, removing the holes was a great help towards cleaning up this shapefile! Dec 29, 2021 at 11:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.