分类筛选
分类筛选:

关于ArcEngine论文范文资料 与基于ArcEngine的似Voronoi多边形生成方法有关论文参考文献

版权:原创标记原创 主题:ArcEngine范文 科目:专科论文 2024-04-07

《基于ArcEngine的似Voronoi多边形生成方法》:本论文主要论述了ArcEngine论文范文相关的参考文献,对您的论文写作有参考作用。

摘 要:Voronoi图是对空间的一种无缝分割方式,是GIS空间分析中一个十分重要的工具,但是目前尚缺乏一些高效稳定的构建任意地理实体(点、线、面)Voronoi图的方法.本文在ArcGIS软件稳定生成点集V图功能的基础上,采用ArcEngine组件技术,利用C#开发语言构建了任意地理实体的似Voronoi图.

关键字:似Voronoi图;ArcEngine;空间分析

Voronoi结构是由俄国数学家M.G.Voronoi于1908年发现并以他的名字命名的.它的实质是一个不规则多边形剖分结构,每个多边形内的点到相应离散点的距离比其他离散点的距离要近.然而,Voronoi图的起源最早可以追溯到17世纪.1644年,R.Descartes用类似Voronoi图的结构显示太阳系中物质的分布.数学家G.L.Dirichlet于1850年同样研究过它,所以有时把Voronoi图又叫Dirichlet Tessellation[1].在地理学界最先应用Voronoi图的是荷兰气象学家A.H.Thiesssen,他利用 Voronoi图研究气象观测站随机分布,所以这个多边形也被称为泰森(Thiesssen)多边形[2].

Voronoi图是对空间的一种无缝分割方式,是一种十分重要的空间分析工具[3].到20世纪60年代,Voronoi图概念在自然科学和社会科学中已被广为接受,但在算法研究领域,多数集中在离散点集上,目前仍然缺乏一些简单的高效稳定的构建任意发生元Voronoi图的方法,为此本文利用文献[3, 4]的思想,采用ArcEngine组件技术构建了任意地理实体(点、线、面)的Voronoi图,以满足地理信息系统中空间分析的需要.

1.Voronoi图生成方法

Voronoi图按照对象集合中元素的最近属性将空间划分成许多单元区域,有着按距离划分邻近区域的普遍特性,因此它应用领域非常广阔,也做到到了广泛研究,产生了生成V图的多种方法.对其构造算法的研究,从对象的几何属性分类,有点生成方法、线生成方法[5, 6]和面生成方法[5, 7];从生成算法的方式分类,有直接方法和间接方法[2];从生成算法的特点分类,有矢量方法和栅格方法[3].

2.基于GIS软件生成任意目标似Voronoi图的总体思想

目前,点状要素的Voronoi图生成算法已经成熟,虽然我们尚不能直接构建复杂地理实体的Voronoi图,但是可以将复杂形状的地理实体分解为点集来处理.文献[3]给出了一般图形Voronoi图的构建方法——近似构造法,其基本思想是,用有限点来逼近原始图形(目标对象),从而代替原始图形,然后构建这些离散点集的Voronoi图,最后消除一些多余的Voronoi边和多余的Voronoi顶点,最终做到到原始图形的逼近Voronoi图.

基于GIS软件的基本步骤:

第一步,对于每个原始目标(线、面)Ai,用有限的点集Pi来逼近Ai的边界,即在Ai边界上增加节点,并转换为点集;

第二步,构建所有点集P的Voronoi图V;

第三步,从V中消除那些属于同一目标点集所产生Voronoi边和那些孤立的点;

第四步,输出V图.

但是,这种方法只能生成以点集包络矩形(Envelope)为边界的V图,因此它只能作为一种表现形式,不能作为空间分析的工具.因为所有的地理分析都是在一定的区域范围内进行的,而区域的形状是多样的.为了生成目标区域边界V图,还必须将上述第三步后的V图与目标区域求交,但是如果V图的包络矩形的范围小于目标区域包络线范围,这种情况下做到到的V图见图1(粗线为目标区域边界),很明显这种V图也不能满足地理分析的需要,因此在上述第三步中须生成以目标区域包络矩形为边界的V图.

对于近似构造法,拟合点数量越多,近似程度就越好,但是由于受时间、空间的限制,不可能无限度地使用大量拟合点,因此近似构造法关键的问题是如何设置拟合点,文献[3]并没有给出设置拟合点的原则.关于如何设置拟合点可以参考文献[ 4],文献提出了用点近似V图与一般V图中对应Voronoi多边形的面积作为近似程度的度量的观点,即用两者面积差的大小来衡量近似程度的高低,并建立了面积差与拟合点间距的数学模型.

3.基于ArcEngine实现任意目标似V图的算法

ArcEngine是ESRI公司推出的一组完备的并且打包的嵌入式GIS组件库和工具库,不依赖ArcGIS Desktop桌面平台,直接安装ArcEngine Runtime和DeveloperKit后,即可利用其在不同开发语言环境下开发,具有简洁、灵活、易用、可移植性强等的特点.因此,我们可以充分利用ArcGIS软件稳健生成点状要素Voronoi图、多边形的融合等功能来实现任意复杂地理实体的普通Voronoi图的构建.

本文利用ArcEngine(10.1)组件,采用C#.Net(2008)开发语言,实现了任意复杂地理实体的普通近似Voronoi图.其算法流程图如图2所示.

算法流程具体描述如下:

(1)要素边界插入节点.获取需要生成V图的图层(主要指线、面图层)后,通过要素Densify(double,double)方法给要素边界按一定距离插入节点,该方法的第一个参数是距离阈值,其值可以根据实际对Voronoi图精度的需要来确定;第二个参数是最大偏差值,偏差为0 时表示距离阈值按边界曲线计算.

(2)将节点生成点要素.首先通过InMemoryWorkspaceFactoryClass类在计算机内存中创建工作区,然后通过IFeatureWorkspace.CreateFeatureClass方法建立一个点要素类,并生成点图层,最后将IPointCollection接口获得的要素边界节点存入点图层中.

ArcEngine论文参考资料:

结论:基于ArcEngine的似Voronoi多边形生成方法为大学硕士与本科ArcEngine毕业论文开题报告范文和相关优秀学术职称论文参考文献资料下载,关于免费教你怎么写ArcEngine方面论文范文。

相关免费毕业论文范文

热门有关优秀论文题目选题

和你相关的