buffering adjacent polygons

4197
14
02-10-2014 08:09 AM
yanma
by
New Contributor
Hi, I am trying to buffer a shapefile feature comprised of many ploygons that represent different segments of water. What is the best way in ArcGIS to leave polygon interfaces un-buffered? Any input is appreciated.
0 Kudos
14 Replies
JakeSkinner
Esri Esteemed Contributor
You can select only the features that you would like buffered, and then execute the tool.  Be sure to use the dropdown to select the input feature.  The selection will be honored, and only these features will be buffered.
0 Kudos
yanma
by
New Contributor
You can select only the features that you would like buffered, and then execute the tool.  Be sure to use the dropdown to select the input feature.  The selection will be honored, and only these features will be buffered.


thanks for replying,JS.

So when I select two adjacent polygons and buffer them with OUTSIDE ONLY. I end up with two buffer strips along the shared edge.

Is there a way to leave the shared edge un-buffered?

(To make this less confusing, what I want to achieve is to decide which of the many polygons contain a given location point, after the polygons are buffered. The problem is that after buffering, there is a overlapping region along the interfaces between adjacent polygons. This region is not desired.)

Hope I made myself clearer this time.

thanks again.
0 Kudos
RichardFairhurst
MVP Honored Contributor
thanks for replying,JS.

So when I select two adjacent polygons and buffer them with OUTSIDE ONLY. I end up with two buffer strips along the shared edge.

Is there a way to leave the shared edge un-buffered?

(To make this less confusing, what I want to achieve is to decide which of the many polygons contain a given location point, after the polygons are buffered. The problem is that after buffering, there is a overlapping region along the interfaces between adjacent polygons. This region is not desired.)

Hope I made myself clearer this time.

thanks again.


The answer is no.  But if you have an Advanced license you could follow up the buffer with the Erase tool using the same input selected polygons and end up with what you want (since you only want outside buffers anyway).

Edit:

I realized you wont get what you want, since you want the shared boundary projected outside of the polygons in a tangent direction to cut off the outside buffer.  Only way to do that is to isolate the shared edge somehow and extend it outward to cut with a knowledge of which side the polygons fell on.  Not sure how to do that.  I have wanted that ability too, but never figured out how to do it.

The Polygon to Line tool could conceivably do part of this and keep track of which polygon is on which side of the share boundary line, but I am not sure how to extend the line the buffer distance and then cut and remove the unwanted portions with the line.
0 Kudos
yanma
by
New Contributor
The answer is no.  But if you have an Advanced license you could follow up the buffer with the Erase tool using the same input selected polygons and end up with what you want (since you only want outside buffers anyway).

Edit:

I realized you wont get what you want, since you want the shared boundary projected outside of the polygons in a tangent direction to cut off the outside buffer.  Only way to do that is to isolate the shared edge somehow and extend it outward to cut with a knowledge of which side the polygons fell on.  Not sure how to do that.  I have wanted that ability too, but never figured out how to do it.

The Polygon to Line tool could conceivably do part of this and keep track of which polygon is on which side of the share boundary line, but I am not sure how to extend the line the buffer distance and then cut and remove the unwanted portions with the line.


Thanks Richard,

I agree the challenge lies with the portion outside the original polygon. Therefore, I am trying to work out an algorithm that calculates the distance from these outlying points to the nearby polygons and assign to it the attributes of the nearest one.

How sensible does this sound to you?

my
0 Kudos
KimOllivier
Regular Contributor II
Am I missing the point? There was no diagram so maybe I am.

Why not dissolve on the selected features before buffering? Then the adjacent boundaries will not be buffered.
Are the adjacent polygons not touching? In that case there are other tools that can jump the gap in the Cartographic Toolset.
eg AggregatePolygons Tool
0 Kudos
yanma
by
New Contributor
Am I missing the point? There was no diagram so maybe I am.

Why not dissolve on the selected features before buffering? Then the adjacent boundaries will not be buffered.
Are the adjacent polygons not touching? In that case there are other tools that can jump the gap in the Cartographic Toolset.
eg AggregatePolygons Tool


Hi Kim

Thanks for joining in.

For my purpose it is essential to maintain the defining boundary for each polygon in the feature. As every polygon has a unique ID in the attribute table, I feel dissolve will compromise this unique identity, as it is a tool to 'aggregate' features. Am I right?

my
0 Kudos
RichardFairhurst
MVP Honored Contributor
Hi Kim

Thanks for joining in.

For my purpose it is essential to maintain the defining boundary for each polygon in the feature. As every polygon has a unique ID in the attribute table, I feel dissolve will compromise this unique identity, as it is a tool to 'aggregate' features. Am I right?

my


Initially I was going to make Kim's suggestion, but realized that Dissolve would compromise the Unique ID, so I did not suggest it. 

This problem is the projected jurisdictional coastline problem.  Multiple jurisdictions along a coast line want to project their jurisdictional boundaries some distance offshore without overlapping each other.  The onshore lands would have the jurisdictional boundaries already defined, so the mainland would never be included in the buffer.  Effectively only the coastline is really supposed to be buffered (ideally a continuous line defining the entire coastline buffered using a single side buffer extending offshore only).  The division of that buffer would extend the onshore shared jurisdictional boundaries at the coastline offshore in a tangent straight line based on how the onshore boundaries break up the coastline to define the portion of the coastal zone that each jurisdiction controls.
0 Kudos
RichardFairhurst
MVP Honored Contributor
I have attached a python file that was exported from Model Builder that created the output shown for a set of Southern California Counties.  It creates a non-overlapping external buffer that is 1 mile wide.  It requires an Advanced license to use all of the tools I applied in the model.

One picture shows the rather complex coastline where Los Angeles and Orange Counties meet which illustrates how well the model worked.

While Yuma and Imperial Counties do not really have a coastline, I used them to illustrate one problem I resolved.  The extension of the internal boundary between these two Counties ran parallel to the buffer boundary.  If I had done a normal line extension Yuma County would contain most of the zone that ran in front of Imperial County.  To resolve that I contained the interior boundary extension to fit within a buffer only surrounding the interior boundary lines that was at a 3 to 1 ratio with the full outer polygon boundaries.  Not the perfect division, but it was acceptable.

The second issue shown that I did not resolve involved an Island of Ventura County where the Centroid of the Island Buffer did not fall within the actual Island polygon.  This made it not take on the island's data when I ran the Spatial Join with that join criteria.  A special process would have to be added to handle this special situation, but I think with a select by Attribute and a secondary process it could be resolved.

A final problem not shown and not resolved is the issue of two parallel original polygon boundaries that do not touch and that are close enough together that their buffers would merge.  This is similar to the problem with internal boundaries being parallel to the buffer boundary, but in reality this does not involve the internal overlapping boundaries.  It involves creation of a Centerline between the two parallel boundaries to create a division in the buffers.  I don't know if the tools in ArcGIS are good enough to handle that situation and it did not come up with this particular data.

Anyway, I hope this gets you closer to what you want.
0 Kudos
RichardFairhurst
MVP Honored Contributor
Here is a screen shot of a more typical buffer division where the internal boundaries are actually perpendicular to the external buffer.  In this situation the model worked perfectly.  The other post emphasized more problematic situations, but in reality the majority of the buffer divisions the model created actually looked like this illustration.
0 Kudos