Buffer(缓冲区)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如果将融合类型选项设置为 ALL 或 LIST,则“缓冲区”工具可创建非常大的多部分 (multipart) 面要素。当使 用的融合字段包含少量的唯一值或者在将所有面融合为单个面时尤其如此。如果面要素非常大,则在地图上绘制或 编辑要素时,可能会引起显示故障并降低性能。要避免这些潜在问题,可使用“缓冲区”工具输出的多部分 (multipart)至单部分(singlepart) 将较大的多部分要素分割为多个较小要素。
String
许可: 此可选参数不适用于 ArcView 或
ArcEditor 级别许可。
dissolve_option (可选)
dissolve_field [dissolve_field,...] (可选)
指定要执行哪种融合操作以移除输出缓冲区重叠。
String
NONE —无论如何重叠,均保持每个要素的独立缓冲区。 这是默认设置。
LEFT —对于线输入要素,将在线的拓扑左侧生成缓冲区。 此选项对于面输入要素无效。
RIGHT —对于线输入要素,将在线的拓扑右侧生成缓冲 区。此选项对于面输入要素无效。
OUTSIDE_ONLY —对于面输入要素,仅在输入面的外部 生成缓冲区(输入面内部的区域将在输出缓冲区中被擦 除)。此选项对于线输入要素无效。
# Erase areas of impact around major roads from the suitable vegetation patches eraseOutput = "C:/output/Output.gdb/suitable_vegetation_minus_roads" xyTol = "1 Meters" arcpy.Erase_analysis(suitableVeg, roadsBuffer, eraseOutput, xyTol)
环境
默认输出 Z 值, M 分辨率, M 容差, 输出 M 属性域, 输出 XY 属性域, 输出 Z 属性域, 输出坐标系, 范围, 当前工作空 间, 地理变换, 临时工作空间, 输出包含 M 值, 输出包含 Z 值, 输出空间格网 1、2、3, XY 分辨率, XY 容差, Z 分辨 率, Z 容差
参数
Байду номын сангаас说明
in_features
要进行缓冲的输入点、线或面要素。
out_feature_class
包含输出要素缓冲区的要素类。
buffer_distance_or_field
创建的缓冲区与输入要素的距离。缓冲距离可以用表示线性距离 的某个值来指定,也可以用输入要素中的某个数值字段(包含用 来对每个要素进行缓冲的线性距离)来指定。
数据类型 Feature Layer
Feature Class
Linear unit ; Field
line_side (可选)
如果“距离”的线性单位未指定或输入了“未知”,则将使用输 入要素空间参考的线性单位。
将进行缓冲的输入要素的侧。
String
FULL —对于线输入要素,将在线两侧生成缓冲区。对于面 输入要素,将在面周围生成缓冲区,并且这些缓冲区将包含 并叠加输入要素的区域。对于点输入要素,将在点周围生成 缓冲区。这是默认设置。
许可: 仅当具有 ArcInfo 许可时,侧类型 (line_side) 选项 LEFT、RIGHT 和 OUTSIDE_ONLY 以及末端类型 (line_end_type) 选项 FLAT 才可用。
语法
Buffer_analysis (in_features, out_feature_class, buffer_distance_or_field, {line_side}, {line_end_type}, {dissolve_option}, {dissolve_field})
缓冲区示例(独立脚本) 查找尚未被主要道路充斥的相应植被区域。
# Name: Buffer.py # Description: Find areas of suitable vegetation which exclude areas heavily impacted by major roads # Author: ESRI
如果对面要素进行缓冲,则可使用负缓冲距离在面要素内部创建缓冲区。使用负缓冲距离将会使面边界减小指定的 距离。 警告: 如果负缓冲距离足够大,使得面缩减至不存在,则将生成空几何。此时将出现 一条警告消息,并且不会将任何空几何要素写入输出要素类。
如果将“缓冲区”工具的输出用作叠加操作(如联合或相交)的输入,建议使用融合类型选项 LIST 或 ALL 来减 少此工具所生成的叠加要素的数量。使用融合类型选项 LIST,并在融合字段中仅选择要执行的分析所需的输入要素 的属性。此操作将减少叠加操作中所涉及的数据集之间的空间关系的数量,从而减少处理过程所需的内存量和时 间。
import arcpy arcpy.env.workspace = "C:/data" arcpy.Buffer_analysis("roads", "C:/output/majorrdsBuffered" "100 Feet", "FULL", "ROUND", "LIST", "Distance")
# Buffer areas of impact around major roads roads = "majorrds" roadsBuffer = "C:/output/Output.gdb/buffer_output" distanceField = "Distance" sideType = "FULL" endType = "ROUND" dissolveType = "LIST" dissolveField = "Distance" arcpy.Buffer_analysis(roads, roadsBuffer, distanceField, sideType, endType, dissolveType, dissolveField)
ALL —将所有缓冲区融合为单个要素,从而移除所有重叠。
LIST —融合共享所列字段(传递自输入要素)属性值的所 有缓冲区。
融合输出缓冲区所依据的输入要素的字段列表。融合共享所列字 段(传递自输入要素)属性值的所有缓冲区。
Field
代码示例
缓冲区示例(Python 窗口) 以下 Python 窗口脚本演示了如何使用“缓冲区”工具:
缓冲区 (分析)
Resource Center » 专业库 » 地理处理 » 地理处理工具参考 » 分析工具箱 » 邻域分析工具集
汇总
在输入要素周围某一指定距离内创建缓冲区多边形。可执行可选融合以合并重叠缓冲区。 了解有关“缓冲区”工作原理的详细信息
图示
用法
如果对具有覆盖较大区域的要素的投影要素类进行缓冲,或正在使用很大的缓冲距离,投影中的变形可能会导致生 成错误的缓冲区。 点或多点输入 - 通过使用具有地理坐标系的要素类,并以线性单位(米、英尺等,而非诸如度之类的角度单 位)指定缓冲距离,可在缓冲点时完全避免变形。当使用此种输入组合时(以线性单位缓冲的地理坐标系中的点 或多点要素),输出将为真实的测地线缓冲区。测地线缓冲区在任意平面地图上均显示为椭圆形,并且仅当其 显示于球体上时才显示为完美的圆形(可使用 ArcGlobe 或 ArcGIS Explorer 应用程序来查看三维球体上的 地理数据)。 线或面输入 - 只能通过使用最小化距离变形的投影(如等距圆锥或等距方位投影)来最小化变形。 通过使用投影工具,可更改输入要素类的坐标系,或在执行“缓冲区”工具前设置输出坐标系地理处理环境,然后 该坐标系将会用于创建缓冲区。 有关详细信息,请参阅缓冲区的工作原理。
相关主题
邻域分析工具集概述
许可信息
ArcView: 是 ArcEditor: 是 ArcInfo: 是
版权所有 © 1995-2011 Esri. 保留所有权利。
2/15/2012 http://help.arcgis.com/zh-cn/arcgisdesktop/10.0/help/0008/000800000019000000.htm
# import system modules import arcpy from arcpy import env
# Set environment settings env.workspace = "C:/data/Habitat_Analysis.gdb"
# Select suitable vegetation patches from all vegetation veg = "vegtype" suitableVeg = "C:/output/Output.gdb/suitable_vegetation" whereClause = "HABITAT = 1" arcpy.Select_analysis(veg, suitableVeg, whereClause)
有关融合类型 ALL 和 LIST 的工作原理的详细信息,请参考融合工具的相关文档。
如果要素的缓冲距离是零,则要素将从缓冲过程中排除。
由于创建缓冲区所用算法的差异,左侧缓冲区或右侧缓冲区的缓冲区边与完全缓冲区创建的缓冲区边略有不同。两 者之间的差异在于输入要素的精度范围。
融合字段参数“添加字段”按钮仅在“模型构建器”中使用。在模型构建器中,如果前面的工具尚未运行或其派生 的数据不存在,则可能不会使用字段名称来填充融合字段参数。“添加字段”按钮可用于将所需字段添加到融合字段 列表,以完成“缓冲区”工具对话框。
使用融合类型选项 NONE 可将字段 BUFF_DIST 添加到输出要素类。该字段包含用于以输入要素坐标系的线性单 位缓冲各要素的缓冲距离。
如果使用输入要素中的字段来获取缓冲距离,则该字段的值可以是数字 (5),也可以是数字加上有效的线性单位 (5 千米)。如果字段值只是数字,则表示这些距离使用输入要素空间参考的线性单位。可在输入字段值的同时输 入任何有效的线性单位,而要素将被缓冲所指定的距离。如果在字段值中指定的线性单位无效或无法识别,则默认 情况下将使用输入要素空间参考的线性单位。
许可: 此可选参数不适用于 ArcView 或 ArcEditor 级别许可。
line_end_type (可选)
线输入要素末端的缓冲区形状。此参数对于面输入要素无效。
ROUND —缓冲区的末端为圆形,即半圆形。这是默认设 置。
FLAT —缓冲区的末端很平整或者为方形,并且在输入线要 素的端点处终止。