2

Our organisation have a large number of land use/zoning plans, many of them are overlapping each other.

I am currently trying to make some sort of interactive map wich allows users to find out what is the most current plan in an area (showing only the outlines of the plan), but because of the overlapping issue I need to find a way to cut/split away the parts of the old plans that have gotten a newer plan. I have access to ArcGIS pro and QGIS.

Hopefully the image below makes some sense of the situation:

There are three plans 1 is the oldest and 3 is the newest.

enter image description here

Any good ideas?

  • Are they separate feature classes or all within the same feature class? If you can divide by some sort of priority field like date of issue perhaps then interactively perform an erase and append, starting at the most recent and continuing to the oldest this will create a 'planar' layer (no overlaps) from there it should be fairly easy as you have a layer with only the most current planning scheme - possibly quicker than a lookup and discard operation for an interactive map request. BTW I don't do web, my hands are full enough to open that can of worms so my opinions may not be suitable for web – Michael Stimson Mar 31 '22 at 07:13
  • A solution using postgis: https://gis.stackexchange.com/questions/379300/removing-overlaps-and-keeping-highest-priority-polygon-using-postgis – BERA Mar 31 '22 at 10:03

1 Answers1

2
  1. Convert polygons to lines: Menu Vector > Geometry Tools > Polygons to lines
  2. Split the polygons with these lines: Menu Processing > Toolbox > Split with lines
  3. Create a (very small) negative buffer around the output of step 2, like buffer distance of -1, depending on the size of your polygons: Menu Vector > Geoprocessing Tools > Buffer
  4. Use Select by expression with this expression: plan = array_max (overlay_within( 'polygons', plan)), where plan is the name of the attribute containing your values (1,2,3...) and polygons the name of the initial polygon layer.
  5. Invert selection, then delete selected features. You are left with the polygons you want: those with the highest plan value where different polygons of the input layer overlap.

Be aware: we applied a small buffer in step 3 to make sure that the intersected parts are really completely within the initial polygons for step 4 (in practice, with my testing data, this was not always the case). However, like this, the resulting polygons from step 5 do not touch any more. You could use, however, the result to identify those polygons created in step 2 that you want to keep if you need topologically correct (without gaps) polygons.

enter image description here

Babel
  • 71,072
  • 14
  • 78
  • 208