Erase Streets from Polygons

1332
7
Jump to solution
09-01-2014 04:07 PM
JensWeißer
New Contributor

Hello,

I am a student who writes his Bachelor thesis.

I have to erase a line feature from a polygon feature(streets from areas of settlement or grassland)

because there es is no possibility to use the ERASE Tool, i would be thankful, if someone can hel me how I can erase a line from a area.

My Idea is, to use the Buffer Tool around the street, and ERASE this Polygon

(Second question does anybody know, if lines in ArcGis have certain wides, if i build the buffer or does the polygon builded by the buffer tool only exist of the buffer?)

Regards

0 Kudos
1 Solution

Accepted Solutions
RichardFairhurst
MVP Honored Contributor

Lines have no width and cannot be erased from anything except an overlapping line.  Also roads are not lines in the real world, their actual physical dimensions should be shown as polygons on the ground.  Use the buffer tool as you have indicated and then erase the buffered polygons.  If you have street functional classifications you can make an educated guess at the buffer widths (half the street width).  You can assume between a 12 to 14 foot width for each paved street lane and a 7 to 10 foot width sidewalk/landscaped shoulder for each roadside for most urban roads.  Road rights-of-way will be wider than the road improvements normally.  You can look at road standard ordinances for your jurisdiction for more information.  For example, in my County the ordinance for road widths is at this link.  If you add a double field to the lines called BufferWidth you can use that field to adjust the buffer created for that roadway segment.

You can use the Field Calculator to translate a functional class field category to a buffer width using a calculation like this which applies to the California Functional Classifiications:

Parser:  VBA/VBScript

Show Codeblock:  Checked

PreLogic Code Block:

Select Case [CA_Functional_Class]

   Case 1  Output = 90  ' Interstate

   Case 2  Output = 76  ' Other Freeway or Expressway

   Case 3  Output = 62  ' Other Principal Arterial

   Case 4  Output = 50  ' Minor Arterial

   Case 5  Output = 45  ' Major Collector

   Case 6  Output = 29  ' Minor Collector

   Case 7  Output = 24  ' Local Road

   Case Else  Output = 0

End Select

Expression:  Output

The calculation above assumes that the street lines represent bidirectional traffic lanes and full improvements.  If they represent only half of a split roadway or roadways that are not fully improved the values would have to be adjusted.

If you do not have an Advanced License you can use the Union tool and then select and eliminate all polygons where the road buffer ObjectIDs are greater than -1.

View solution in original post

0 Kudos
7 Replies
AnthonyGiles
Frequent Contributor

Jens,

have a look at symmetrical difference analysis:

ArcGIS Help 10.1

it requires an advanced licence to run though

0 Kudos
JensWeißer
New Contributor

thank you for your answer, but this tool doesn't start because i have a polyLINE and a polyGONE

0 Kudos
RichardFairhurst
MVP Honored Contributor

Lines have no width and cannot be erased from anything except an overlapping line.  Also roads are not lines in the real world, their actual physical dimensions should be shown as polygons on the ground.  Use the buffer tool as you have indicated and then erase the buffered polygons.  If you have street functional classifications you can make an educated guess at the buffer widths (half the street width).  You can assume between a 12 to 14 foot width for each paved street lane and a 7 to 10 foot width sidewalk/landscaped shoulder for each roadside for most urban roads.  Road rights-of-way will be wider than the road improvements normally.  You can look at road standard ordinances for your jurisdiction for more information.  For example, in my County the ordinance for road widths is at this link.  If you add a double field to the lines called BufferWidth you can use that field to adjust the buffer created for that roadway segment.

You can use the Field Calculator to translate a functional class field category to a buffer width using a calculation like this which applies to the California Functional Classifiications:

Parser:  VBA/VBScript

Show Codeblock:  Checked

PreLogic Code Block:

Select Case [CA_Functional_Class]

   Case 1  Output = 90  ' Interstate

   Case 2  Output = 76  ' Other Freeway or Expressway

   Case 3  Output = 62  ' Other Principal Arterial

   Case 4  Output = 50  ' Minor Arterial

   Case 5  Output = 45  ' Major Collector

   Case 6  Output = 29  ' Minor Collector

   Case 7  Output = 24  ' Local Road

   Case Else  Output = 0

End Select

Expression:  Output

The calculation above assumes that the street lines represent bidirectional traffic lanes and full improvements.  If they represent only half of a split roadway or roadways that are not fully improved the values would have to be adjusted.

If you do not have an Advanced License you can use the Union tool and then select and eliminate all polygons where the road buffer ObjectIDs are greater than -1.

0 Kudos
JensWeißer
New Contributor

thank you for the answers! they helped me a lot.

at the moment I use the ERASE Tool, to erase the buffered Polygons from other Polygons, but I get this ERROR Message:

Executing (Erase (8)): Erase "C:\Users\Dokumente\ArcGIS\Datenbank\Step 1 nutzbare Flaeche.gdb\Erase_temp20" "C:\Users\Dokumente\ArcGIS\Datenbank\Step 1 nutzbare Flaeche.gdb\DLM_3102_Weg_Hauptwirt_Puffer_TRAFOPOLYGON" "C:\Users\Dokumente\ArcGIS\Datenbank\Step 1 nutzbare Flaeche.gdb\Erase_temp22" #

Start Time: Wed Sep 03 14:29:19 2014

Reading Features...

Processing Tiles...

ERROR 999999: Error executing function.

The table was not found.

The table was not found. [Erase_temp22]

The table was not found.

The table was not found. [Erase_temp22]

Invalid Topology [Topoengine error.]

Failed to execute (Erase (8)).

Failed at Wed Sep 03 14:44:51 2014 (Elapsed Time: 15 minutes 32 seconds)

can anybody guess what's wrong, I searched in forums and tried to Export the Features in Shape without M and Z-Data, or in another database, repaired it, nothing worked

0 Kudos
RichardFairhurst
MVP Honored Contributor

I have never used the Erase tool.  I always use the Union tool for these problems.

I would use the Union Tool and eliminate all polygons where the road buffer ObjectID is greater than -1 if the Erase tool is giving you a problem.  I would also use the Multipart to Single part tool on the remainder and then the Dissolve tool with original landuse ObjectIDs as the case field and use the no mult-part feature option to see the final polygon set.

0 Kudos
JensWeißer
New Contributor

thank you Richard!

the solution of the error was to export the input feature as shape file and use this exported shapefile (not consisting in the gdb) as input.

0 Kudos
RichardFairhurst
MVP Honored Contributor

I suspect that Simplify would have had the same result as converting to a shape file, because a simplification occurs when you downgrade from a high precision file geodatabase feature class to a low precision shape file.  Additionally, buffer creates bezier curves in a file geodatabase feature class output, which are downgrade to densified points when you convert to a shape file, so perhaps the Densify tool would have fixed this problem also.

Anyway, I am glad you got to the result you wanted.

0 Kudos