I have a feature class with about 250,000 contiguous polygons. ArcEditor turns up around 9,000 overlap errors when I validate the topology. I want to merge each of these errors into one of the polygons they source from - they're all very tiny overlaps, so it really doesn't matter which one. All 9,000 errors can be fixed in exactly the same way.

In the Error Inspector, the Merge option is only available when I select one error at a time - selecting a bunch of them greys it out. This means I need to do the same repetitive task for every single error. I would love to be able to avoid doing these one at a time, might save me from carpal tunnel and wasting the better part of a day.

Any suggestions?


This won't help unless you also have access to an ArcInfo level license but the Eliminate tool is designed for removing sliver polygons like those you describe: http://help.arcgis.com/en/arcgisdesktop/10.0/help/0017/00170000005p000000.htm

  • Thanks for that tip, but unfortunately, no ArcInfo license. I wonder if a Spatial Join (slivers to original polys) to get adjacent polygon IDs, then a Dissolve based on similar polygon IDs would achieve a similar effect. – John Bryant Jul 3 '11 at 22:24
  • Sounds like it could be well worth a try. The step between the Spatial Join and the Dissolve would need to probably be a Python script or a model to decide which polygons should get the same "dissolve value". For example, each sliver will intersect at least one non-sliver polygons (i.e. those that the sliver resulted from) and you would need to decide a rule for which it gets the same value as. Since you are not fussy just choosing the first, smallest or largest might be equally valid. – PolyGeo Jul 3 '11 at 22:34
  • Spatial Join 20%...Spatial Join 23%...Spatial Join 25%...Spatial Join 18%...Spatial Join 21%...Spatial Join 23%...Spatial Join 25%...Spatial Join 18%... I wonder if this will actually complete? 5 hours and counting. Worked great in a smaller sample. – John Bryant Jul 7 '11 at 23:38
  • Also see Removing small spaces between polygons. Note especially the comment by @Stephen-Lead referring to EliminateSlivers arcscript which doesn't require an Arcinfo license (I haven't tried it). – matt wilkie Nov 9 '12 at 17:06

Use the Editing Tools > Snap tool.

Use the feature class as both the Input Features and the Snap Environment with no selection and Edge snapping for the type. Where you have overlaps, the feature with the lower ObjectID will be snapped to the feature with the higher ObjectID.

Use versioning if you can, because this tool modifies the input rather than creating a new feature class.

Run a couple of iterations, starting with a relatively small snap distance and working your way up. This way you will not accidentally cause major alterations in your data.

  • This sounds like a good possibility, but I'm running into 2 problems: it only seems to solve half of each overlap, and it seemed to process endlessly (I killed it after 30 minutes), even for a subset of about 1% of my feature class. – John Bryant Jul 1 '11 at 19:14
  • Try PolyGeo's suggestion. While you cannot do a mass correct Merge, I think you can do a mass correct Create New Polygon on your topology. If you do that, it will create 9,000 sliver polygons, which you can then fix with the Eliminate tool – blord-castillo Jul 2 '11 at 20:02
  • Thanks for that. I'll give it a shot with slivering the overlaps. – John Bryant Jul 3 '11 at 22:25

For anyone else with the same problem: if you are using ArcGIS 10.0 or higher, try running the "Delete Identical" tool in the Data Management Toolbox. Only check the box "Shape". This will compare the geometries of each feature and then only leave one (no guarantee which one). This removed about 90% of the overlapping polygons from my dataset.

Note: this tool edits your file, it does not create a new file, as most tools do, so remember to back up you data before running it!

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.