生成线要素分段缓冲区

前段时间做了个小工具,可以生成线要素的分段缓冲区,补充 ArcGIS 现有缓冲区工具的不足,用来辅助实现更多的功能。

工具基于 arcpy、maths、os 几个模块实习,arcpy 中并没有提供现成的计算切线方向的函数或接口,我就尝试通过点处微小偏移量的三角定理计算方法构造切线,然后进行角度换算实现垂线的构造,最后再用垂线去切割缓冲区条带。


链接中可以下载 ArcGIS Desktop 或者 ArcGIS Pro 的工具箱版本( 开发版本:Desktop 10.5,Pro 1.3,其他版本需要自己测试下 ):

https://github.com/kikitaMoon/ArcGIS-Python/tree/master/LazyWorker/BambooBuffer
(更新20171204:改SplittedBuffer为BambooBuffer,好像更形象一点)

以在 ArcGIS Pro 中添加和使用为例:


工具源码参考:
https://github.com/kikitaMoon/ArcGIS-Python/blob/master/LazyWorker/BambooBuffer/PerpendicularLine_2.0_Tool.py


基于工具的应用实例:

1 统计公路各分段的拥堵情况

2 河道分段水位模拟