模型构建器(model builder)创建多距离缓冲区(buffer)

🔍 需求:为同一要素创建等间距的多个缓冲区,ArcGis Pro 自带的【多环缓冲区】结果在同一个要素内,无法满足需求。

❌ 无效尝试:在【迭代器】中选择【迭代多值】,输入所需距离列表后,发现无法作为缓冲区分析输入值连接至缓冲区。
在这里插入图片描述

🎉成功尝试:尝试后发现,使用【For 循环】迭代后得到的值可以作为距离输入缓冲区工具内
在这里插入图片描述

💡提示:使用 ArcGis Pro 中的“成对缓冲”工具进行多线程运算速度非常快。即使是对 6 万多个点位进行 5 次迭代缓冲,也只需要大约 12 秒就能完成运算。

### 如何在 ArcGIS创建缓冲区轮廓 为了实现这一目标,可以利用ArcGIS中的【缓冲区】工具来完成操作。此工具位于【分析工具】下的【邻域分析】菜单中[^3]。 #### 工具准备与参数设定 首先,在ArcMap或ArcCatalog环境中打开【ArcToolbox】窗口。导航至路径【分析工具】->【邻域分析】->【缓冲区】以启动该功能。对于输入要素的选择,假设要围绕名为`pipelines`的数据集建立个同心圆状的缓冲区,则应在对话框内指定`pipelines`作为输入要素。 #### 距离设置与其他选项配置 接着定义各层缓冲区之间的间距。这里举例说明设置了7个不同的距离值,并且这些数值是从外向内地逐步减小。这意呸着最外围的第一圈具有最大的半径,而每一后续圈子都会比前一圈更靠近中心点。另外,“融合选项类型”被选定为`ALL`模式,这意味着所有重叠部分都将自动合并成单一区域而非独立个体存在。 ```python import arcpy arcpy.env.workspace = "C:/GIS_Project/Data" input_feature = "pipelines.shp" # 创建缓冲区 output_buffer = "multi_ring_buffer.shp" distances = ["100 Meters", "80 Meters", "60 Meters", "40 Meters", "20 Meters"] merge_type = "ALL" arcpy.MultipleRingBuffer_analysis( in_features=input_feature, out_feature_class=output_buffer, distances=distances, buffer_unit="Meters", dissolve_option=merge_type) print("Multi-ring buffer created successfully.") ``` 上述Python脚本同样能够帮助自动化执行相同的过程,其中指定了具体的文件路径以及各个缓冲区距离单位和大小。当运行这段代码之后,将会基于给定的管线特征对象生成一个缓冲区图层并保存到指定的工作空间下。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值