缓冲区分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
§3-2 基于矢量数据的缓冲区分析
双线问题
缓冲区计算的基本问题是双线问题。 双线问题有很多另外的名称,如图形 加粗,加宽线,中心线扩张等,它们指的 都是相同的操作。
1)角分线法 双线问题最简单的方法是 角分线法(简单平行线 法)。算法是在轴线首尾 点处,作轴线的垂线并按 缓冲区半径R截出左右边 线的起止点;在轴线的其 它转折点上,用与该线所 关联的前后两邻边距轴线 的距离为R的两平行线的 交点来生成缓冲区对应顶 点。
§3 缓冲区分析
§3-1 缓冲区的定义
所谓缓冲区就是地理空间目标的一种影响范 围或服务范围。从数学的角度看,缓冲区分 析的基本思想是给定一个空间对象或集合, 确定它们的邻域,邻域的大小由邻域半径R 决定。因此对象Oi的缓冲区定义为:
Bi x : d x, Oi R
即对象 Oi 的半径为R的缓冲区Bi为距Oi的距离d小于R 的全部点的集合。d一般是最小欧氏距离,但也可是 其它定义的距离。 对于对象集合
图给出一个缓冲区边线自相交的例子。
缓冲区边界相交的情况
自相交多边形的两种情况Leabharlann Baidu
岛屿多边形和重叠多边形:岛屿多边形是
缓冲区边线的有效组成部分;重叠多边形不是缓 冲区边线的有效组成,不参与缓冲区边线的最终 重构。
自动判别方法
首先定义轴线坐标点序为其方向,缓冲区双 线分成左右边线,左右边线自相交多边形的 判别情形恰好对称:对于左边线,岛屿自相 交多边形呈逆时针方向,重叠自相交多边形 呈顺时针方向;对于右边线,岛屿多边形呈 顺时针方向,重叠多边形呈逆时针方向。
S
A a B
采用向量叉乘判断向量排列
C b
S
A a B C b
BC X C X B , YC YB bx , b y
S AB BC a b a x by bx a y
AB X B X A , YB YA a x , a y
X B X A YC YB X C X B YB Y A
矢量代数叉积遵循右手法则,如果拐点呈逆时 针方向时: 若S>0,则ABC呈逆时针,顶点为凸; 若S<0,则ABC呈顺时针,顶点为凹; 若S=0,则ABC三点共线。
边线自相交问题
对于简单情形,缓冲区是一个简单多边 形; 当计算形状比较复杂的对象或多个对象 集合的缓冲区时,则出现边线自相交的情况。
折点凸凹性的自动判断
该算法非常重要的一环是折点凸凹性的自 动判断。此问题可转化为两个矢量的叉积: 把相邻两个线段看成两个矢量,其方向取 坐标点序方向。若前一个矢量以最小角度 扫向第二个矢量时呈逆时针方向,则为凸 顶点,反之为凹顶点。
具体算法过程如下: 由矢量代数可知,矢量AB,BC可用其 端点坐标差表示
角分线法的缺点
当缓冲区半径不变 时,d随张角B的减 小而增大,结果在 尖角处双线之间的 宽度遭到破坏。
d R sinB 2
2)凸角圆弧法 在轴线首尾点处,作轴线的 垂线并按双线和缓冲区半径 截出左右边线起止点; 在轴线其它转折点处,首先 判断该点的凸凹性,在凸侧 用圆弧弥合,在凹侧则用前 后两邻边平行线的交点生成 对应顶点。 这样外角以圆弧连接, 内角直接连接,线段端点以 半圆封闭。
注意:当存在岛屿和重叠自相交多边形时, 最终计算的边线被分为外部边线和若干岛 屿。对于缓冲区边线绘制,只要把外围边 线和岛屿轮廓绘出即可。
§3-3 基于栅格结构的缓冲区分析
基于栅格结构也可以作缓冲区分析,通常 称为推移或扩散(Spread)。推移或扩散 实际上是模拟主体对邻近对象的作用过程, 物体在主体的作用下在一阻力表面移动, 离主体越远作用力越弱。 例如:可以将地形、障碍物和空气作为阻 力表面,噪声源为主体,用推移或扩散的 方法计算噪声离开主体后在阻力表面上的 移动,得到一定范围内每个栅格单元的噪 声强度。
O Oi : i 1,2, , n
i 1 i
其半径为R的缓冲区是各个对象缓冲区的并集, n 即: B B
特殊形态的缓冲区
点对象有三角形,矩形和圈形等; 对于线对象有双侧对称,双侧不对称或单侧 缓冲区; 对于面对象有内侧和外侧缓冲区。
这些适合不同应用要求的缓冲区,尽管形态 特殊,但基本原理是一致的。