AnsweredAssumed Answered

Efficient way to check if a vertex coincides with another feature's vertex

Question asked by zoltan_szecsei on Jan 12, 2019
Latest reply on Jan 12, 2019 by zoltan_szecsei


I'm looking for an efficient way to see which vertices in one feature touch a vertex in another feature.

I will then need to edit the vertex of the "first" feature.


I have a large polygon feature set that I will select some polygons from.

For each polygon in this subset, I need to check if any of its vertices coincide with that of another (Polygon or polyline) feature in (two) other feature classes.

If a vertex in this first subset touches a vertex in the 2nd or 3rd feature class, I will have to edit that vertex and update that polygon (in the first feature set).


I have tried crawling through the vertices of the subset and using SelectLayerByLocation by coverting the XYZ of the vertex for use in the Select statement, but this yields unreliable results.

I have tried using various SelectLayerByLocation with various "Intersect" or "WITHIN A DISTANCE 3D" cluses but the problem here is that I cannot (find a way to) release my latest selection without clearing the full selection (because I work with sub-selections from all 3 feature classes)


I'm wondering if the way to go is to create a point file from the first subset, adding the vertex's OID and sequence information as attributes to the resulting point, and then JOINing by location the points to the 2nd and 3rd feature sets. Where there is a JOIN, they touch, where not, they don't touch.

Then using this information to delete and manually rebuild the polygons in this first subset.


All this complication is because I cannot find a way to see if anything exists at a particular XYZ location.


Comments/thoughts welcome.

Thanks in advance,