缓冲区分析

在地理信息系统（GIS）和空间分析中的用途是界定地理要素周围一定距离范围内的区域，即缓冲区（）。缓冲区可能是方法中最常用的工具。Wade, T. and Smmer, S. eds. A to Z GIS 

 历史 
自1970年代末和1980年代初的原始集成GIS软件包（如ARC/INFO、Odyssey和MOSS）以来，缓冲区操作一直是GIS功能的核心部分。尽管在后来，它已成最常用的GIS操作之一，但除了偶有开发出更高效的算法外，几乎没有关于该工具本身的研究文献发表。

 基本算法 
link=//upload.wikimedia.org/wikipedia/commons/thumb/8/8a/GIS_Buffer.png/220px-GIS_Buffer.png|thumb|构造一个折线要素（蓝色）的缓冲区（红色）
在给定的距离（半径）r下，在矢量数据模型的地理要素周围建立缓冲区的基本方法如下：

 单点：围绕点作半径为r的圆。
 多段线（由按顺序排列的顶点的列表组成，各顶点之间以直线段连接）或多边形的边界：

 在每个顶点周围创建一个圆形缓冲区
 在每条线段两侧偏移距离r，建立矩形。
 将矩形和圆形融合成一个多边形。

软件中的缓冲区操作的实现方式，通常采用此方法各种变式，以更有效和准确地处理地理信息。

 平面与测地距离 
传统实现方法中，缓冲区是在欧几里德几何在平面的笛卡尔坐标空间（即由地图投影创建）上创建的，因为其数学计算相对简单；考虑到1970年代后期的电子计算机计算能力有限，这一点曾非常重要。由于地图投影会造成失真，以这种方式计算的缓冲区与实在在地球表面绘制的缓冲区不同；在小尺度范围内，这种差异可忽略不计，但在更大的尺度下，误差可能很大。

目前有一些软件（例如Esri的ArcGIS Pro和turf ）提供按测地线距离（geodesic distance）计算缓冲区的选项，其算法与原始算法类似，但基于球面三角法进行计算，包括将顶点之间的线表示为大圆。还有一些软件实现中采用了一种变通的方法：首先将要素重新投影为位置失真较少的投影，然后在新的投影上计算平面缓冲区。

 选项 
GIS软件可能会提供基本算法的变体，以适应不同应用场景的需要：

 末端：线要素缓冲区的末端在默认情况下是圆的，但也可改用方形或切角。
 侧类型：例如可选择只在线条的一侧作缓冲区，只在多边形的内部或外部作缓冲区。
 可变宽度：一个图层中的要素可以使用不同的半径进行缓冲，距离值通常由属性指定。
 共同缓冲区：将图层中每个要素的缓冲区都融合到单个图形中。当研究者不关心空间中每个点邻近的是哪个具体的要素，只关心附近是否有相关要素时时，常使用该选项。

 参见 

 膨胀 (形态学)（正距离缓冲区）
 腐蚀 (形态学)（负距离缓冲区）

 参考文献 

 外部链接 

 OGC ST_Buffer function  (PostGIS implementation)
 buffer function  in turfjs
 BufferOp  in JTS, the library at the foundation of many open-source GIS implementations
 v.buffer  command in GRASS
 Buffer (Analysis)  tool in Esri ArcGIS Pro

Category:空间数据分析
Category:几何学
Category:地理信息系统