How do I find the differing polygons between two layers in QGIS?
After running the difference operation, however, I get results like this:
I am only interested in the solid (blue) polygons, not the weird lines - which I suspect are the result of rounding error, or previous conversion of the polygon layers from different file types - who knows.
One idea I had was to calculate the area of the polygons and simply select those with non-zero (or above any obvious peak in the distribution) values, but irritatingly the line polygons seem to have substantial areas in many cases.
Save As...
and check theSave only selected features
option. Then save it as a new shapefile. Alternatively, have you tried theEliminate sliver polygons
tool or thev.clean
tool with the rmdangle parameter?SELECT ST_Difference(layer1.geom, layer2.geom) FROM layer1 INNER JOIN layer2
?