阅读:5712回复:7
[讨论]缓冲区分析讨论区!
<P><img src="images/post/smile/dvbbs/em46.gif" /></P>
<P>老师出了道题让编一个缓冲区分析的程序。</P> <P>有那位大虾知道怎么做啊?还有有没有人知道一些gis软件里缓冲区分析的算法?</P> <P>提前谢过!!</P> |
|
1楼#
发布于:2004-06-02 08:34
<P><FONT face=华文新魏 color=#000099><a href="http://ress.wtusm.edu.cn/garden/courseware/gis/ch5/ch5Index.htm" target="_blank" >http://ress.wtusm.edu.cn/garden/courseware/gis/ch5/ch5Index.htm</A></FONT></P><P><FONT face=华文新魏 color=#000099>空间数据的缓冲区分析</FONT></P><H3><FONT size=+0>一、基于矢量数据的缓冲区分析</FONT></H3><P><B>(一)、</B><B>缓冲区及其作用</B></P> 在这里,缓冲区的概念与计算机技术中的缓冲区概念无关,而是指在点、线、面实体的周围,自动建立的一定宽度的多边形。如图5-5-1。 <P align=center><img src="http://ress.wtusm.edu.cn/garden/courseware/gis/ch5/Images/5.5.1.23.gif"><BR vglayout" clear=all> (1)点的缓冲区 (2)线的缓冲区 (3)面的缓冲区</P><P align=center>图5-5-1 点、线、面的缓冲区</P><P> 缓冲区分析是GIS的基本空间操作功能之一。例如,某地区有危险品仓库,要分析一旦仓库爆炸所涉及的范围,这就需要进行点缓冲区分析;如果要分析因道路拓宽而需拆除的建筑物和需搬迁的居民,则需进行线缓冲区分析;而在对野生动物栖息地的评价中,动物的活动区域往往是在距它们生存所需的水源或栖息地一定距离的范围内,为此可用面缓冲区进行分析,等等。</P><P> 在建立缓冲区时,缓冲区的宽度并不一定是相同的,可以根据要素的不同属性特征,规定不同的缓冲区宽度,以形成可变宽度的缓冲区。例如,沿河流绘出的环境敏感区的宽度应根据河流的类型而定。这样就可根据河流属性表,确定不同类型的河流所对应的缓冲区宽度,以产生所需的缓冲区。</P><P><B>(二)、</B><B>缓冲区的建立</B></P><P> 点的缓冲区建立时,只需要给定半径绘圆即可。面的缓冲区只朝一个方向,而线的缓冲区需在线的左右配置。下面简介线的缓冲区的建立思路。</P><P> 在建立线缓冲区时,通常首先要对线进行化简,以加快缓冲区建立的速度。这种对线的化简称为线的重采样。具体的算法设计可采用线的矢量数据压缩算法,如§7.4中介绍的方法。 </P><P> 建立线缓冲区就是生成缓冲区多边形。只需在线的两边按一定的距离(缓冲距)绘平行线,并在线的端点处绘半圆,就可连成缓冲区多边形。</P><P> 对一条线所建的缓冲区有可能重叠,如图5-5-2。这时需把重叠的部分去除。基本思路是,对缓冲区边界求交,并判断每个交点是出点还是入点,以决定交点之间的线段保留或删除。这样就可得到岛状的缓冲区。 </P><P align=center><img src="http://ress.wtusm.edu.cn/garden/courseware/gis/ch5/Images/5.5.1.24.gif"></P><P align=center> (1)输入数据 (2)缓冲区操作 (3)重叠处理后的缓冲区</P><P align=center>图5-5-2 单条线的缓冲区</P><P align=center><img src="http://ress.wtusm.edu.cn/garden/courseware/gis/ch5/Images/5.5.1.25.gif"></P><P align=center> (1)输入数据 (2)缓冲区操作 (3)重叠处理后的缓冲区</P><P align=center>图5-5-3 多条线的缓冲区</P><P> 在对多条线建立缓冲区时,可能会出现缓冲区之间的重叠。这时需把缓冲区内部的线段删除,以合并成连通的缓冲区(图5-5-3)。<P> </P></P><H3><FONT size=+0>二、基于栅格数据的缓冲区分析</FONT></H3><P> 缓冲区分析在GIS中用得较多,但对矢量数据的缓冲区操作比较复杂,而在栅格数据中可看作是对空间实体向外进行一定距离的扩展,因而算法比较简单</P>
|
|
|
2楼#
发布于:2004-06-03 22:36
谢谢
|
|
3楼#
发布于:2006-09-25 14:00
谢谢了
|
|
4楼#
发布于:2006-10-19 13:29
<img src="images/post/smile/dvbbs/em05.gif" />
|
|
|
5楼#
发布于:2008-04-07 19:53
缓冲区的重叠部分怎么合并?比如折线的拐角处
|
|
6楼#
发布于:2008-04-23 21:11
2楼说的很详细啦
|
|
7楼#
发布于:2008-06-23 15:59
谢谢二楼为我们这些新手提供了这么多好的东西!<img src="images/post/smile/dvbbs/em08.gif" />
|
|