论文部分内容阅读
随着计算机软硬件技术发展,从上世纪50年代末至今,数字高程模型构建算法一直是地学经典研究领域之一,经过诸多学者们的不断努力,格网模型、不规则三角网模型、等高线模型等一系列成熟的模型应运而生,在模型构建方面,也产生了一些比较成熟的思想。诸多数字高程模型(DEM)中以TIN较为常用,因此其生成的相关算法一直备受关注。本文对传统不规则三角网生成算法和基于DTIN追踪生成等值线原理进行概述,对它们主要特点进行分析,结合传统方法对整个过程进行研究。算法实现涉及四个方面:离散点三角形剖分建立不规则三角网(D-TIN),基于D-TIN内插生成等值点集合,开闭两类等高线同时绘制,等值线适度光滑和标注。关于离散点剖分生成D-TIN的过程,通过对传统方法的对比,采用了一种相对实用的三角网生长算法,它以三角网生成的一般算法为基础,对于生长算法来说减少最邻近点查找次数、降低计算复杂度是两个主要的改进方向,本生长算法扩展的内容是多边形,而不是三角形,但就三角形而言,每个三角形仅有两条边进行拓展,而不是三条边,在以基线为基础的最邻近点判断上,进行细化,将离散点以基线(有向线段)为分界分为左右两个点集(刚好落在直线上的离散点与基线无法构成三角形,所以不考虑),使用所需要的点集进行判断,一定程度减少了最邻近点判断次数,只用判断夹角是否最大,不用判断是否位于左侧(右侧),以上是对一般算法的较大改良。值得一提的是在D-TIN数据结构设计上,吸收传统数据结构,以ArcEngine提供的PointClass、LineClass两个类为基础补充一些新属性,分别自定义相应的CoordinatePoint、Edge、Triangle类,提出新的储存点、边线的新结构,更加有利于等值点的计算和后续等高线的追踪。传统等高线追踪过程是分开等高线和闭等高线分别进行的,本文对等值点计算和等高线追踪模式进行了新的尝试,首先进行等值点的计算,将计算结果存储到一个集合中,然后解析等值点集合,同时进行开闭等高线追踪(等高线采用ArcEngine提供的PolylineClass类对象进行渲染)。采用PolylineClass类的Smooth函数对等高线进行光滑,该方式简便快捷,可以直接将组成等高线的折线段集按照对应参数转换成相对平滑的贝塞尔曲线。最后使用ArcEngine提供的方法对等高线图层进行标注。经过测试,离散点生成D-TIN的实用算法在一定程度上提高了构网速度,具有很强实用性;同时也对新追踪模式进行验证,结果也是可靠的。