Variable width buffer along line

3324
9
08-24-2016 01:31 AM
BartoszBrzeziński1
New Contributor III

Hi everyone!,

i`m using Arcgis Desktop 10. 4 and i`d like to somehow obtain even distribution of value along line. I have river line. At the beginning of river section value is 3 meteres, at the end 6 meters - random values to present issue. Is it possible to get even distribution along that section? Thanks for help. 

0 Kudos
9 Replies
DanPatterson_Retired
MVP Emeritus

Can you clarify... you have shown a start and end line, perpendicular to the river... are the lines to be spaced with an increasing length and constant spacing?

0 Kudos
BartoszBrzeziński1
New Contributor III

Lines presents start and end of section but also places where buffer should start with 3 meters width and end with 6 meters width. Next image should explain this better.

0 Kudos
DanPatterson_Retired
MVP Emeritus
BartoszBrzeziński1
New Contributor III

 The result. Nice tool but it works for just only straight lines. 

0 Kudos
DanPatterson_Retired
MVP Emeritus

ahh... should have used that as your example photo... 

check Darren's example and see it handles inconsistent angles... can't remember, but I am sure the code could be modified for your situation

https://community.esri.com/message/622726 

BartoszBrzeziński1
New Contributor III

Thanks once again but i have no experience in Phyton.

0 Kudos
BartoszBrzeziński1
New Contributor III

Could you help me with that code?

0 Kudos
DanPatterson_Retired
MVP Emeritus

I'll let Darren Wiens‌ fill in the final code, but these need to be changed as well as giving file paths instead of the in_memory locations

lines = r"c:\temp\myline.shp"   # or r"c:\temp\some.gdb\myline"
...  
max_buff = 50 # buffer at line start  
min_buff = 10 # buffer at line end 

if it works... you save the result

0 Kudos
JayantaPoddar
MVP Esteemed Contributor

There should be better methods than the following.

Make a copy of the line feature before following the methodology. Also the layer/data frame should be in Projected Coordinate System with map unit in meters.

1. Cut and delete any unnecessary portion of the line for which you don't want to create the buffer.

2. Split the line into n equal parts. The more number of parts you create, the smoother output you will get (say you divide it into 60 parts since it is a multiple of 3).

2. Add a field (Float) to the attribute table for the buffer distance. Fill the attribute values using Attribute editor in regular intervals like 3, 3.05, 3.1, 3.15,....., 5.9, 5.95, 6. (Tedious task I know).

3. Create buffer based on the above Field.



Think Location
0 Kudos