Thursday, 3 December 2015

geoprocessing - Creating polygon feature class from area in one not covered by another using ArcGIS Desktop?


I am working on a project doing spatial analysis at a statewide level. I am looking at a form of transportation coverage in a state, and part of my analysis involves buffers and drive time polygons. I am using a geodatabase (therefore ArcGIS) for all my work, so new features will be exported as feature classes in feature datasets.


To visualize: I have said state border, and some dissolved buffer rings around some points, and they cover parts of the state. I want to create a feature class for the parts of the state these buffer rings don't cover, AKA gap areas. Is there a tool I can use or create to do this?


I know I could draw them in manually in editor, but I am unsure if that's the most precise way to generate these feature classes. To me, I am thinking this operation would be like an inverted "Clip" in that I take the two layers, and instead of pulling out the clipped area, it would take everything not in the clipped area.



Thoughts?


I am using a Desktop Basic license.



Answer



There's another option that isn't as elegant as Erase or Union and involves a few more steps, but it can be done at Basic and without third party tools (which can be an issue if you don't have administrative rights on the machine).



  1. Make a copy of your buffer layer, bufferdummy. If you have more than one layer, you can select them all and export/copy them to a new feature class.

  2. In bufferdummy, select everything and use the Merge tool on the Editor dropdown menu. It doesn't matter which feature's attributes you choose to preserve.

  3. Now make a copy of your state border, notcovered This will become the feature class you're trying to create.

  4. With only bufferdummy and notcovered editable (turn other layers off - be careful because this command will affect all editable layers), select the bufferdummy polygon and on the Editor dropdown choose Clip. Don't set a buffer and leave it on 'discard area of intersect'. The other option would do what the Clip GP tool does - trim away outside the shape instead of inside it.



You can then delete bufferdummy and you should be left with notcovered as a single poly (possibly multipart) that is all of your state border not covered by a buffer. You might want to explode it to get rid of multiparts if there are any, but I have a feeling you'll end up with one big shape and holes cut out of it rather than separate pieces. You can leave this as its own feature class or add it to your buffer layer (name attribute of greater than max buffer or some such).


No comments:

Post a Comment

arcpy - Changing output name when exporting data driven pages to JPG?

Is there a way to save the output JPG, changing the output file name to the page name, instead of page number? I mean changing the script fo...