AnsweredAssumed Answered

Removing slivers between polygon boundaries

Question asked by jbrengel on Jul 12, 2017
Latest reply on Oct 30, 2018 by jbrengel



I have a bit of an interesting problem that I am trying to solve.  Basically, I have multiple shapefiles of unprojected polygons that represent field boundaries over the course of about a decade.  Each shapefile (there are ten in total) represents a single year of field boundaries.  Over the course of the decade, there have been many changes to the field boundaries so there are legitimate shape differences between years that must be preserved.  


Here is the tricky part.  I'd like to preserve these legitimate field boundary changes from different years that might represent a different field, while at the same time getting rid of field boundaries that are incorrect overlays/gaps, bad slivers, etc..  In other words, I need to keep any boundaries that are significantly different enough between years as legitimate field differences and get rid of any boundaries from different years that look like they should match up but they do not. In the end, I need to have a master polygon file of field boundaries over all years that respects the legitimate boundary differences between years and correct polygon geometery but eliminates slivers/gaps/bad overlays that are not correct between years. It is vital that the original attributes are preserved, too!!


Note: I'm using the most recent year of field boundaries as the reference against which all other shapefiles field boundaries are compared.  Depending on the year and location of the fields, there are very significant differences from the current year's field boundaries.  


My initial thought was that I need to eliminate potential non desired overlays, slivers, gaps, etc. I've tried the Integrate tool, but I've found it's nearly impossible to find an appropriate XY cluster tolerance that acceptably removes potential slivers/bad overlays between years while preserving a original features’ geometry (e.g. A polygon that represents a long skinny road in the shapefile might be collapse, for example).  In addition, I've tried using Intersect and Merge tools but this does not seem to be an appropriate application for these tools.  


My conclusion is that I should create a geodatabase topology, but I am not sure that this is the right route to take either.  I used the Feature to Line tool to create polylines and then set up a rule in my topology that the different feature classes must cover each other.  This generates errors that quite nicely sum up the differences, but there are no automatic/quick fixes for this route (this particular rule does not have an associated topology error fix with it).  


Right now, I was thinking of exporting these errors as features in a feature class and then using a buffer on the current year field boundaries to delete the errors features that fall within that buffer distance.   


I'm pretty stuck at this point so any ideas to get the ball rolling would be very much appreciated!  Thank you!


- Josh


Note: I need to make adjustments without changing the original shape of the field boundaries.


Note: I need to automate this process as much as possible, so having arcpy ability with my geoprocessing tool is a must! Thanks!!