Find intersecting polygon within a layer

It is better to use Topology Checker tool not Check Geometries. Topology Checker is located under Vector -> Topology Checker, then click on configure button and define a new rule Must not overlap.

Here is an example:

This is a polygon shapefile which has overlap polygons as well as separate polygons.

enter image description here

Go to Configure in the Topology Checker tool.

enter image description here

  1. Current Rule: select the polygon layer
  2. Must not Overlap
  3. Add Rule
  4. Click OK

enter image description here

Click on Validate Extent or Validate All as you like

enter image description here

Then the overlap area will be highlighted.

enter image description here


I think self-intersections here only refers to intersections within features (with "edge overlappings" if i may say so ...) not between features ... There's a nice tool in SAGA toolbox called Polygon self intersections (... that should be its right name ...) which is doing exactly what u seem to be expecting ....


you can do it with virtual layer and sql.

Assuming that your layer has an id called "id". you can do following query

select a.* 
from your_layer as a, your_layer as b
where st_intersects(a.geometry, b.geometry) and a.id <> b.id

or you can just use 'topology checker'. If you do not see it, just activate it in the plugins

Tags:

Geometry

Qgis