Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I had a feature class containging about a thousand polygons.After some processing such as intersecting, dissolving, merging, more intersecting, I ended up with a feature class of about 6000 polys. This was several months ago, and since then more data has been added/removed, attributes have changed etc.

I now need to get the feature class back to its original state. Not original as in the actual shapes from before, but where one original polygon was split into 4 polys, it must now be dissolved back into one.

enter image description here

One method I considered was using Spatial Join with the match option of Shares_a_line_segment_with, as all the polys which share a line segment would have originated from the same polygon. Unfortunately, the unique IDs assigned to the original polygons were 'lost' a while ago, so I cannot just dissolve the result of the spatial join based on target or join ID, as multiple polys share line segments, and they would all be joined to each other (resulting in several join and target IDs in overlapping polys).

I don't need to preserve the attribute information, I only want the original polygons back. I was thinking of using a feature selection iterator to select by location on each feature where it shares a line segment with another, populating a list with the relevant IDs and then calculating a unique ID for the group, which I could use as my dissolve field, but that seems unnecessarily complicated, and I'm sure there is something simpler I could do.

share|improve this question
How many "original polygons" will be in the resultant layer? If it is just 1, just add a dummy field, calculate it with all the same value, then run the dissolve command. – RyanDalton Dec 6 '12 at 6:11
The result would contain all the polygons that are touching dissolved into each other, so on average, 5 polygons share line segments, which means they were originally 1 polygon. At about 5000 polygons, I'm looking at a result of about 1000 polygons. Without a common attribute between the touching polys, I can't dissolve them the way I would like, which is why I did the spatial join. This still didn't give me something common to all of the touching polygons. – Cindy Williams-Jayakumar Dec 6 '12 at 6:40
Would it be possible to share the attribute tables of the polygons before and after the split? – R.K. Dec 6 '12 at 7:19
That's part of the problem, the table structures changed dramatically several times over the period of time. It also wasn't a single split, but the result of various intersections/merging/deleting/adding new polygons to produce the current layer, which is why I basically want to group the polys which share boundaries, then dissolve/merge them into one. – Cindy Williams-Jayakumar Dec 6 '12 at 7:24

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.