不规则三角网的算法设计与实现.pdf

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1 引言 地球表面高低起伏,呈现一种连续变化的曲面,这种曲面无法用平面地图来确切表示。于是 我们就利用一种全新的数字地球表面的方法——数字高程模型的方法,这种方法已经被普遍 广泛采用。数字高程模型即 DEM (Digital Elevation Model),是以数字形式按一定结构组 织在一起,表示实际地形特征空间分布的模型,也是地形形状大小和起伏的数字描述。 由于地理信息系统的普及,DEM 作为数字地形模拟的重要成果已经成为国家空间数据基础设 施(NSDI)的基本内容之一,并被纳入数字化空间框架(DGDF)进行规模化生产,已经成为 独立的标准基础产品[5]。DEM 有三种主要的表示模型:规则格网模型,等高线模型和不规则 三角网。格网(即 GRID)DEM 在地形平坦的地方,存在大量的数据冗余,在不改变格网大小 情况下,难以表达复杂地形的突变现象,在某些计算,如通视问题,过分强调网格的轴方向。 不规则三角网(简称 TIN,即Triangulated Irregular Network)是另外一种表示数字高程 模型的的方法(Peuker 等,1978),它既减少了规则格网带来的数据冗余,同时在计算(如 坡度)效率方面又优于纯粹基于等高线的方法。不规则三角网能随地形起伏变化的复杂性而 改变采样点的密度和决定采样点的位置,因而它能够避免地形起伏平坦时的数据冗余,又能 按地形特征点如山脊,山谷线,地形变化线等表示数字高程特征。 基于三角形的表面建模可适合所有的数据结构,且三角形在形状和大小方面有很大灵活性, 能很容易地融合断裂线,生成线或其他任何数据,因此基于三角形的方法在地形表面建模中 得到了越来越多的注意,已经成为表面建模的主要方法之一。VB 语言简洁易学,对于学习 GIS 的学生来说无疑是接受很容易而且较快的一门计算机编程和开发语言,也是大多数学生最熟 悉和了解的语言。正是基于对生成不规则三角网算法的研究和满足学 GIS 的学生对VB 语言 的喜爱和熟悉的情况下,本文就主要介绍用三角网生长算法生成不规则三角网及其在VB6.0 环境下的实现。 2 TIN 的算法种类及各算法特点 在介绍构成 TIN 各种算法之前我们要来了解认识一下一个重要法则——Delaunay 三角网法 则。通常构建三角网并不考虑地性线(山脊线,山谷线)的骨架作用,但是,由于用等高线 数据构建三角网时,由于地形的复杂多样,有的地区存在因地形突变而形成的断裂线等特殊 地貌。另外一些地区存在大面积水域等内部不需要构网的区域,因此,在精度要求较高的 TIN 中,必须考虑以上问题。因此此时应顾及地性线,断裂线,水域线等特殊情况,也就是应构 建约束—Delaunay 三角网。约束法是基于约束图计算约束 D—三角剖分[1,9] (简称CDT,即 [8] ConstrainedDelaunayTriangulation)构造算法 ,这种Delaunay 三角网满足这样的法则: Delaunay 三角网为相互邻接且互不重叠的三角形的集合,每一个三角形的外接圆内不包含 其他点。Delaunay 三角网由对应 Voronoi 多边形的点连接而成。Delaunay 三角形有三个相 邻点连接而成,这三个相邻顶点对应的 Voronoi 多边形有一个公共的顶点,此顶点是 Delaunay 三角形外接圆的圆心(如图 1)。 根据构建三角网的步骤,可将三角网生成算法分为三类:(1)分而治之算法(由Shmaos 和 Hoey 提出),其基本思路是使问题简化,把点集划分到足够小,使其易于生成三角网, 然后把子集中的三角网合并生成最终的三角网,用局部优化(LOP,即Local Optimization Procedure)算法保证其成为Delaunay 三角网[3],它的优点是时间效率高,但需要大量递归 运算,因此占用内存空间较多,如果计算机没有足够的内存,这一方法就无法使用[2];(2) 数据点渐次插入算法(由 Lawson 提出),其思路很简单,先在包含所有数据点的一个多边 形中建立初始三角网,然后将余下的点逐一插入,用 LOP 算法保证其成为 Delaunay 三角网[3]。 此算法虽然容易实现,但效率极低;(3)三角网生长算法,在这三种算法中,三角网生长 算法在 80 年代以后的文献中已很少见,较多的是前两种算法[3],三角网生长算法目前较少 人研究,笔者在这里讨论的就是这一算法,该算法是由 Michael J.McCullagh,Charles G.Ros

文档评论(0)

139****2704 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档