0

After Understanding Union analysis output using single feature class with overlapping polygons in ArcGIS Pro I now have a better understanding of that tool.

However, I have a single polygon Feature class with about 33,000 shapes. I'm looking for overlaps. I want to be able to say "Shape x overlaps with Shape y and Shape z"

Union (Analysis) doesn't do this. Intersect (Analysis) which may requires an Advanced level license but I am using ArcGIS Pro 2.6 with a Standard level license.

How else can I do it?

I've looked at this solution by NeilAyres: https://community.esri.com/t5/data-management-questions/find-overlapping-features/td-p/6948

In his code he says

poly_dict = {}
# union has "ORIG_FID" as part of its output
with arcpy.da.SearchCursor(fc, ["ORIG_FID", "SHAPE@", "SHAPE@XY"]) as Cur:

Mine doesn't. There is no "Orig_FID" in my union analysis output. So the rest of the solution is meaningless. Maybe I'm using different software?

On that same page, KenBuja says to try the "Find Overlapping Features tool" which seems to be a plugin. But not one that I can get working with ArcGIS Pro.

7
  • This can be done with a short python script- is your feature class a shapefile or a geojson? Mar 23 at 21:48
  • File geodatabase, polygon featureclass
    – Maxcot
    Mar 23 at 21:51
  • Maybe start with ArcPy? gis.stackexchange.com/questions/310581/…. These are the types of questions that ArcPy is built for. Maybe try with a simple for loop: for each shape, check for any overlaps with all other shapes, and if there is an overlap, gather the overlapping shape names into an array. Mar 23 at 21:55
  • Tried that. Overlap just tells me a count of overlaps. Also pointless.
    – Maxcot
    Mar 23 at 22:00
  • Scroll down to the solution by Niel Ayres: community.esri.com/t5/data-management-questions/… Mar 23 at 22:05
3

Spatial Join is available with a Basic license level. One option in Spatial Join is to include the attributes of the joined features. This will give you the object IDs of both polygons.

https://pro.arcgis.com/en/pro-app/latest/tool-reference/analysis/spatial-join.htm

0
1

I just ran a Union on a feature class with two intersecting circle polygons named testPolys using ArcGIS Pro 2.7.2. The output has four polygons (including two identical geometries where they overlap) and a field named FID_testPolys (which is "Orig_FID" of that code).

It is possible that the field naming may have changed since Neil Ayres wrote that 4 years ago or maybe they just used an example rather than actual field name in the code that they provided at GeoNet.

I think that code will do what you are after but I also think using Spatial Join as in the answer by @GBG is a simpler solution.

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.