6

I keep on having this issue and I can't find the "perfect answer":

First of all, I work in ArcGIS 9.3.1. I have 2 layers: roads1950, roads2000. I need to make a layer with roads which were built/changed between 1950-2000. The most perfect thing was to have a "erase-like" tool that would cut out the identical to roads1950 features in roads2000. The problem is that the erase tool only works with polygon layers. I could do a merge and sow out the doubles but it's a (very) long process and it isn't accurate.

Do you know of a tool/method that could help me ?

1
  • Symmetrical difference in ArcGIS 10 works on points lines & polygons. However in 9.x I just did an intersect of the old data and new data. Then if you take away the intersect from the old layer and then from the new layer, you will create additions & deletions. I'm doing an MSc dissertation and looking for ways to do change detection on vector features. i think SymDiff may be my solution...
    – user3512
    Jun 29, 2011 at 19:01

5 Answers 5

5

For the Erase tool, only the erase features must be polygons. Input features can be point, lines or polygons. How about buffering a few meters the roads2000 layer and using it as the erase features on the roads1950.
As a side note, in ArcGIS Desktop 10, erase features can be of any type.

Ref:

1
  • It is indeed a option, but if the layer has thousands of features it can be a long and tiresome process (and it might crash because of buffer polygons intersecting.
    – jonatr
    Mar 29, 2011 at 9:51
2

If the older roads (the ones you want to "erase") have exactly the same geometry as the older roads in the 2000 dataset, you can do a Select by Location with the choice "are identical to" in order to select the pre1950 road features in the 2000 road dataset. Start the edit session before your selection, then just delete the selected set and you're left with post1950 road features.

3
  • +1 for like-mindedness. I was wondering if a Spatial Join might be of any use, myself.
    – Nathanus
    Mar 29, 2011 at 15:07
  • The easiest and fastest way, shamed to admit that I didnt know "are identical to" option exists. The downside is that any 1-mm movement makes the method detect it wrong (but then again, it's the digitizer's fault, not the method's).
    – jonatr
    Mar 31, 2011 at 6:54
  • You could always consider throwing a small buffer around each feature, dissolving the intermediate boundaries, and then Select By Location (within) if you are worried about avoiding very small digitizing changes like mentioned above. Consider building this in ModelBuilder so you can automate this task and use it for the future. Jun 30, 2011 at 15:48
2

Think you are looking for Symmetrical Difference

http://webhelp.esri.com/arcgiSDEsktop/9.3/index.cfm?TopicName=How%20Symmetrical%20Difference%20%28Analysis%29%20works

Features or portions of features in the input and update features that do not overlap will be written to the output feature class.

3
  • Ok, this might be a answer, but as I have only ArcEditor (and not ArcInfo), I don't have Symmetrical Difference - any way there is a "free Symmetrical Difference tool" out there?
    – jonatr
    Mar 29, 2011 at 11:18
  • jonatr downvoted as you didn't specify license level. QGIS GIS is a free alternative with "free Symmetrical Difference" tool
    – Mapperz
    Mar 29, 2011 at 13:51
  • serves me right... but thanks for the tip on the tool, another reason (added to a lot more)to upgrade the license level...
    – jonatr
    Mar 29, 2011 at 18:59
2

If by "method" you mean arcobjects, then consider the ITopologicalOperator.Difference method. It works with lines, but they need to precisely coincide. enter image description here

1
  • sorry, don't work (yet) with arcOBjects...
    – jonatr
    Mar 29, 2011 at 11:19
1

You might try creating a topology with both datasets and set a rule saying roads1950 must be overlapped by roads2000. The errors would be roads abandoned since 1950.

Then set a different rule saying roads2000 must be overlapped by roads1950. The errors would be the roads built since 1950.

1
  • Nice approach. Didn't work for me this time, but as I was only made aware to this tool weeks ago, I like your use of it.
    – jonatr
    Mar 31, 2011 at 6:55

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.