I have 2 shapefiles with interlocking polygons (sadly not with any unique common denominator like fid), one with moved borders. I want to extract the changes made in one of the shapefiles (see picture for clarity) and wondered if that is somehow possible in QGIS

How can I get the extracted area

  • 1
    Take a look at Vector Overlays
    – BERA
    Feb 22, 2023 at 14:05
  • Do you have any (even on unique) field ? Also, what are the possible changes ? External boundary is always unchanged on only the inner polygons (limited to 2 ?) can change ?
    – Kasper
    Feb 22, 2023 at 14:55

1 Answer 1


One thing you can do: create a 3rd layer as the Intersection of the two other ones (beforeand after)

enter image description here

enter image description here

enter image description here

With one expression in the Intersection layer, you can test:

(overlay_contains('after') or overlay_contains('before'))=0

When used with rule-based styling, this is what you will get:

enter image description here

Hope this covers the possible changes in your use case. It is based on testing if a geometry from the Intersect corresponds to either a shape from the before or after layers. If not, then it's an area where the polygons have been modified

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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