国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Delaunay三角網(wǎng)的等值線生成

2017-03-16 09:29雷歡胡惠菱
科技創(chuàng)新與應(yīng)用 2017年5期

雷歡 胡惠菱

摘 要:在地質(zhì)、氣象、環(huán)境等相關(guān)領(lǐng)域,等值線使用廣泛。文章基于Delaunay三角網(wǎng)等值線生成算法,在ArcMap中將離散點(diǎn)的文文章件轉(zhuǎn)化成Shapefile點(diǎn)數(shù)據(jù)文件,使用ArcGIS Engine讀取離散點(diǎn)生成三角網(wǎng),利用等值點(diǎn)的插值、追蹤等技術(shù)尋找等值點(diǎn)并繪制等值線。

關(guān)鍵詞:等值線;Delaunay三角網(wǎng);GIS

1 概述

近年來,隨著計(jì)算機(jī)技術(shù)的快速發(fā)展,等值線和等值面的應(yīng)用廣泛,在氣象領(lǐng)域,降水等值線可表示某區(qū)域的降水情況;測繪領(lǐng)域,等高線可表示區(qū)域的地形地貌情況。等值線在國民生產(chǎn)和建設(shè)中發(fā)揮著越來越重要的作用。

在三維空間,數(shù)據(jù)采集點(diǎn)在空間上的分布往往呈離散形式。利用有限的離散空間信息盡量恢復(fù)地學(xué)變量的分布狀態(tài),以研究在空間上的變化規(guī)律和分布特征,最常用、最普遍的方法就是繪制空間變量的等值線圖[1]。

2 設(shè)計(jì)思路

在ArcMap中將離散點(diǎn)的文文章件轉(zhuǎn)化成Shapefile點(diǎn)數(shù)據(jù)文件,使用ArcGIS Engine讀取離散點(diǎn),得到離散點(diǎn)的坐標(biāo)和高程值。對(duì)離散點(diǎn)進(jìn)行插值,生成Delaunay三角網(wǎng),基于Delaunay三角網(wǎng)使用追蹤等技術(shù)尋找等值點(diǎn)并繪制等值線。

2.1 Delaunay三角網(wǎng)的構(gòu)建

Delaunay三角網(wǎng)的經(jīng)典生成算法有三種:分治算法,逐點(diǎn)插入法,三角形生長法[2]。三種算法各有優(yōu)劣,分治算法效率高,遞歸運(yùn)算較多,占用內(nèi)存大;逐點(diǎn)插入法容易實(shí)現(xiàn),效率較低;三角形生長法占用內(nèi)存少,效率較低。文章采用逐點(diǎn)插入法生成Delaunay三角網(wǎng)。

2.2 等值點(diǎn)的計(jì)算

三角形三個(gè)頂點(diǎn)的值分別為p1,p2,p3,等值線的值為H,三角網(wǎng)生成后,需要在三角網(wǎng)上插補(bǔ)等值點(diǎn)。如果三角形的三個(gè)頂點(diǎn)的值p1,p2,p3都不相等,其中有一個(gè)頂點(diǎn)的值等于當(dāng)前等值線的值,例如p1=H,若該三角形還存在另一個(gè)等值點(diǎn),則另一個(gè)等值點(diǎn)位于頂點(diǎn)p1所對(duì)應(yīng)的三角形的邊上,確定三角形等值點(diǎn)所在的邊后,利用線性內(nèi)插方法就可以求出等值點(diǎn)的坐標(biāo),其數(shù)學(xué)計(jì)算公式如圖1所示。

2.3 等值線的追蹤

基于Delaunay三角網(wǎng)追蹤等值線的主要過程包括:線頭的尋找、等值點(diǎn)的追蹤、尋找結(jié)束標(biāo)志等。線頭的尋找主要包括尋找開曲線線頭及尋找閉曲線線頭。尋找開曲線、閉曲線的線頭后,需要找到某等值線的全部等值點(diǎn),這就是等指點(diǎn)的追蹤。線尾的尋找同樣包括開曲線和閉曲線線尾的尋找。

3 等值線生成的實(shí)現(xiàn)

使用ArcMap通過Add XY Data方法,加載原始離散點(diǎn)文本數(shù)據(jù),并保存為Shapefile文件,使用ArcGIS Engine組件式開發(fā),基于上述等值線生成算法,由離散點(diǎn)坐標(biāo)生成Delaunay三角網(wǎng),最后確定等值線的值對(duì)三角網(wǎng)進(jìn)行插值計(jì)算,找到等值點(diǎn),將等值點(diǎn)連接起來就可以形成等值線。

3.1 數(shù)據(jù)預(yù)處理

原始離散數(shù)據(jù)文件中記錄了點(diǎn)號(hào),坐標(biāo),屬性值,即(ID、X、Y、Z)。在ArcMap中通過Add XY Data方法,將離散點(diǎn)文本中的數(shù)據(jù)在Arcmap中以點(diǎn)的形式顯示,將這些點(diǎn)導(dǎo)出為shp格式的文件,完成離散點(diǎn)文文章件轉(zhuǎn)化為shp格式的文件,shp文件屬性表中記錄著點(diǎn)號(hào),坐標(biāo),屬性值。將原始離散數(shù)據(jù)轉(zhuǎn)換成shp格式,便于在Map控件里讀取并顯示點(diǎn)的信息。

3.2 讀取shp文件

在VS環(huán)境下,引入MapControl(ArcGIS Engine地圖控件),編寫代碼實(shí)現(xiàn)shp文件的讀取并顯示。

3.3 離散點(diǎn)坐標(biāo)生成三角網(wǎng)

根據(jù)三角網(wǎng)特征,由記錄在數(shù)組里的坐標(biāo)X、Y,采用逐點(diǎn)插入法,得到三角網(wǎng)數(shù)組Triangle并生成Delaunay三角網(wǎng)。逐點(diǎn)插入法的思想是:根據(jù)離散點(diǎn)的信息構(gòu)建一個(gè)三角網(wǎng)之后,逐個(gè)插入離散點(diǎn),根據(jù)三角網(wǎng)的性質(zhì),調(diào)整現(xiàn)有的三角網(wǎng),直至生成包括所有離散點(diǎn)的三角網(wǎng)。生成三角網(wǎng)結(jié)果如圖2所示。

根據(jù)給定的等間距,讀取存儲(chǔ)點(diǎn)的數(shù)組,求出等值線條數(shù)及每條等值線的數(shù)值。對(duì)每條等值線,在三角網(wǎng)里內(nèi)插等值點(diǎn),并追蹤繪制出等值線。生成等值線結(jié)果如圖3所示。

4 結(jié)束語

文章基于Delaunay三角網(wǎng)生成等值線算法,設(shè)計(jì)并用程序?qū)崿F(xiàn)了由離散點(diǎn)數(shù)據(jù)生成Delaunay三角網(wǎng),再利用三角網(wǎng)生成等值線的流程。在ArcMap中將離散點(diǎn)的文文章件轉(zhuǎn)化成Shapefile點(diǎn)數(shù)據(jù)文件,使用ArcGIS Engine讀取離散點(diǎn)生成三角網(wǎng),利用等值點(diǎn)的插值、追蹤等技術(shù)尋找等值點(diǎn)并繪制等值線。存在得到的等值線沒有進(jìn)行平滑處理、基于三角網(wǎng)進(jìn)行等值點(diǎn)內(nèi)插時(shí),只是在三角網(wǎng)內(nèi)部插值,沒有考慮外插情況等不足,將在后面進(jìn)一步的完善。

參考文獻(xiàn)

[1]姜志偉,王山東,王伶俐,等.基于格網(wǎng)和方向法索引的Delaunay三角網(wǎng)生成算法[J].測繪工程,2014.

[2]遲文學(xué),吳信才,于海洋,等.張力樣條函數(shù)在雨量等值線光滑中的應(yīng)用研究[J].水文,2007.