I have a polygon layer composed of ~140 polygons of varying sizes and shapes (the greenish in the image) along the coast, plus a polygon of the state itself (the bluish in the image). Basically, I need a shoreward buffer of the green polygons - so a buffer of 250 m on each green polygon, but only on the side of the polygon adjacent to the large blue polygon. I would like to find a way to mostly automate this process, if at all possible. Like maybe if I add the angle/direction of the blue polygon to the attribute table of the green polygons, maybe there is code that could specify the buffer goes in that direction only?
Additionally, the shoreward buffer must have an alongshore span equal to the alongshore span of the polygon itself (so like flat ends, not rounded). Like this:
I'm using ArcGIS Pro and have access to an advanced license. Appreciate any help or ideas 🙂
Off the top of my head you could script or model build the following process (maybe try it manually first so you can see what's happening):
1. Buffer state polygon with multiple rings at the distances you want.
2. Use the Erase tool with the multiple rings feature class as the input and using the state polygons to Erase (leaving you with just buffers on the seaward side
3. Use the clip (analysis) tool with the output from the erase tool as the input and the green polygons feature class from your example as the "clip features"
Output should be ring buffers in just those zones on just the seawards side of your state polygons
Hi, thanks for the reply. I just realized something confusing in my original post and edited it - What I need is a buffer of the green polygons but only where adjacent to the blue polygon. I also added another caveat to the original post, which is that the alongshore span of the buffer needs to be the same as the alongshore span of the original polygon.
One thing that I tried that seemed close to working was to convert the polygons to polylines, split the lines at vertices, and then select only those features within a small distance of the blue polygon and only buffer those on one side with a flat end on the buffer. This would work if the lines running perpendicular to the blue polygon weren't also selected (because they have a starting point at the blue polygon). So there is something missing there, but it came close!
Manual editing to get the Polylines seems like the most foolproof way if this is only a small number of features. You mention the perpendicular lines being an issue. Why not delete those segments after splitting the lines?
You could also buffer the State Polygons by a few metres, then Clip that new Buffer to the Yellow features, then run your Buffer (Flat end option). Finally Clip that Buffer to the original State Polygons.
I could definitely manually delete the perpendicular lines, but I was just wondering if there was any way to automate the whole process.
When you say run the buffer (flat end option), is that referring to the new buffer clipped to the yellow features?
Thanks!
Yes, it would be the new buffer you clip to the yellow features. This should produce a thin sliver of a polygon which runs along the shoreline and extends a few metres (whatever distance you buffered by) offshore.
You then buffer that, then finally clip to the State Polygons (so that it's all inland).