The polygons that I use in ArcMap 10.2 are drawn so that they snap to each other, but never overlap. I've described a general case in the following image:

enter image description here

A polygon is defined by the minimum vertices. Both green and pink polygons are constructed of 4 vertices. When drawn snapping is used.

My problem is that I am now required to add a new vertex were the vertex of one polygon meets the line of the other polygon. As seen in the lower part of the image, the green polygon is required to have a 5th vertex were the vertex of the pink polygon touched it. Similarly the pink polygon will also have a 5th vertex added.

To automate this process I thought of selecting each polygon and running the Clip command. This will add the needed vertex on the other polygon. But there are too many polygons to work with; are there other ways of achieving the same result?

Something like:

  • Detect polygons that touch.
  • Check if where the vertex of the pink polygon touched the line of the other polygon the green polygon has the needed vertex. If not, return the id or write something in a column.

3 Answers 3


You could build a topology in a geodatabase, and then when you validate that topology, it will add vertices in the manner you describe.


If you are not familiar with this, basically what you would do is create a feature dataset in a geodatabase, import your feature class(es), set up the topology and the topology rule(s) (ex: must not overlap), and validate it. It should automatically put in vertices where a vertex from one polygon sits on the edge of another polygon.


I just tested (albeit at ArcGIS 10.3 for Desktop) to confirm that you can do this using the Integrate (Data Management) tool.

This is available at all license levels and is a single quick step.

The output is as below where the vertices are shown for the northern polygon but an extra vertex was inserted on the southern polygon too.

enter image description here


If you have an Advanced level license, the Feature to Polygon tool will create a new vertex at the desired locations. Since you have no overlap it shouldn't produce any slivers, but it will if the edges aren't coincident (ie edge snapped) to start with.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.