欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種局部精度約束的三維地形生成方法

文檔序號:8528733閱讀:265來源:國知局
一種局部精度約束的三維地形生成方法
【技術領域】
[0001]本發(fā)明涉及一種三維地形生成方法,特別是一種局部精度約束的三維地形生成方法,屬于三維可視化技術領域。
【背景技術】
[0002]在數字化和信息化的今天,隨著地理信息應用領域的不斷拓展,傳統(tǒng)的二維地圖已不能滿足人們的需要,人們開始逐漸關注具有豐富地形地貌信息的三維地形圖。但由于自然地形復雜多樣,計算機處理能力有限,在這個領域存在著可視化處理精度有限、三維顯示效果缺乏真實感等問題。
[0003]目前三維可視化領域普遍應用3D MAX、VUE和VTB等成熟商用建模軟件實現(xiàn)三維地形生成。上述商業(yè)建模軟件在三維地形的實際生成過程中,普遍存在生成地形整體精度受限和局部地形精度無法修改的不足,如3D MAX軟件主要利用高程數據影像結合精細紋理處理技術生成地形,生成地形高程受限于高程數據的影像,無法動態(tài)修改;VUE軟件生成地形數據的分辨率一般低于2048X2048,生成的地形高程在后期采用濾波方式改變局部地形的形態(tài),無法針對局部地形的分辨率進行精細化二次處理;VTB軟件只對地形數字高程模型文件進行三維構建和顯示,地形的高程依賴于原始數據,無法進行二次修改。

【發(fā)明內容】

[0004]本發(fā)明解決的技術問題是:針對上述地形生成方法精度的不足,提供一種針對局部精度約束的三維地形生成方法,通過對菱形正方形算法的優(yōu)化,實現(xiàn)約束控制,使生成地形形態(tài)更接近自然形態(tài),通過局部約束條件,引入固定形態(tài)數據產生高度逼真的自然效果,并通過提取中間部分網格,進行中心約束,極大提高了地形精度;本發(fā)明生成數據量大,可以根據要求生成整體高分辨率數據,且滿足局部精度要求;在存儲時通過使用較為復雜的鏈表結構存儲數據點,降低了物理內存大區(qū)域連續(xù)分配的問題。
[0005]本發(fā)明所采用的技術方案是:一種局部精度約束的三維地形生成方法,步驟如下:
[0006](I)根據預先給定地形點的個數創(chuàng)建數據存儲網格模型,將預先給定地形點的高程數據和該數據在數據存儲網格模型中所處的行列數存儲在數據存儲網格模型中;所述預先給定地形點為待生成三維地形的邊點和中心點,且相鄰預先給定地形點的連線構成矩形網格;
[0007](2)將當前地形點在當前數據存儲網格模型中所處的行列數更新為當前地形點在一次三維地形細分后的數據存儲網格模型中所處的行列數;
[0008](3)利用矩形網格中最小網格單元的四個頂點高程數據求得每個最小網格單元的中心點高程數據,更新數據存儲網格模型,并將求得的每個最小網格單元的中心點高程數據和該數據在更新后的數據存儲網格模型中所處的行列數存儲在更新后的數據存儲網格模型中;
[0009](4)以最小網格單元的頂點和中心點為菱形的頂點,以最小網格單元邊線的中心點為菱形的中心構建菱形,并利用菱形各頂點的數據計算每個最小網格單元邊線中心點的高程數據,并將求得的每個最小網格單元邊線中心點的高程數據和該數據在更新后的數據存儲網格模型中所處的行列數存儲在更新后的數據存儲網格模型中;
[0010](5)利用最小網格單元邊線中心點的高程數據更新每個最小網格單元的中心點高程數據,將求得的每個最小網格單元的中心點高程數據和該數據在更新后的數據存儲網格模型中所處的行列數存儲在更新后的數據存儲網格模型中,完成一次三維地形細分;
[0011](6)重復步驟(3)?步驟(5),直到三維地形整體精度達到要求;
[0012](7)選取目標區(qū)域,并將目標區(qū)域內步驟⑴預先給定的地形點和步驟(3)?步驟
(6)求得的最小網格單元邊線中心點以及最小網格單元中心點中相鄰的點連接,構成新的矩形網格,代替步驟(I)中的矩形網格,將dHeight變?yōu)樵瓟抵档?/(2%重復步驟(2)?步驟(5),直至所選取的三維地形局部精度符合預設的要求;所述r為凹凸度常數;
[0013](8)重復步驟(2)?步驟(7),直至所形成三維地形的所有局部精度符合預設的要求;
[0014](9)引入外部約束數據,對步驟(8)中獲得的三維地形進行修正,獲得最終的三維地形。
[0015]所述步驟(3)中利用矩形網格中最小網格單元的四個頂點高程數據求得每個最小網格單元的中心點高程數據,具體由公式:
[0016]E= (A+B+C+D) /4+random(-dHeight/2, dHeight/2)
[0017]給出,其中,A,B,C,D分別表示最小網格單元的四個頂點高程數據,E表示最小網格單元的中心點高程數據,dHeight表示最小網格單元的四個頂點中某一個頂點的高程數據。
[0018]所述步驟(4)中利用菱形各頂點的數據計算每個最小網格單元邊線中心點的高程數據,具體為:
[0019]若最小網格單元邊線中心點位于步驟⑴中矩形網格的邊線上,則最小網格單元邊線中心點的高程數據由公式:
[0020]H= (B+D+2E) /4+random (-dHeight/2, +dHeight/2)
[0021]給出,其中,H表示最小網格單元邊線中心點的高程數據,B,D分別表示構建菱形的各頂點中兩個最小網格單元頂點的高程值,若預先設定的三維地形邊界不為水平面,則E為最小網格單元的中心點高程數據,否則,E = O ;dHeight表示最小網格單元的四個頂點中某一個頂點的高程數據;
[0022]否則,最小網格單元邊線中心點的高程數據由公式:
[0023]Q= (E+F+J+K) /4+random(-dHeight/2, dHeight/2)
[0024]給出,其中,Q表示最小網格單元邊線中心點的高程數據,E,F(xiàn)分別表示構建菱形的各頂點中兩個最小網格單元頂點的高程值,J和K分別構建菱形的各頂點中兩個為最小網格單元的中心點高程數據。
[0025]所述步驟(5)中利用最小網格單元邊線中心點的高程數據更新每個最小網格單元的中心點高程數據,具體由:
[0026]E= (F+G+H+I)/4+random(-dHeight/2, dHeight/2)
[0027]給出,其中,E為最小網格單元的中心點高程數據,F(xiàn), G, H, I分別表示最小網格單元四個邊線中心點的高程數據,dHeight表示最小網格單元的四個頂點中某一個頂點的高程數據。
[0028]所述步驟(8)中引入外部約束數據,對步驟(7)中獲得的三維地形進行修正,獲得最終的三維地形,每一點的修正具體由公式:
[0029]Height = hinXrandom[0, l/2n] XWin+hori X (1-random[0, l/2n]) Xffori
[0030]給出,其中,Height表示修正后的高程值,hin表示輸入數據中的高程值,Win表示外部輸入的權重,hOTi表示原始高程值,W OTi表示原始高程值的權重。
[0031]所述數據存儲網格模型采用鏈表結構存儲數據。
[0032]所述步驟(2)中將當前地形點在當前數據存儲網格模型中所處的行列數更新為當前地形點在一次三維地形細分后的數據存儲網格模型中所處的行列數,具體由公式:
[0033]ri+1 (li+1) = T1 (Ii) X 2-1
[0034]給出,其中,1^表示當前地形點在當前數據存儲網格模型中所處的行數,I i表示當前地形點在當前數據存儲網格模型中所處的列數,ri+1表示當前地形點在一次三維地形細分后的數據存儲網格模型中所處的行數,li+1表示當前地形點在一次三維地形細分后的數據存儲網格模型中所處的列數。
[0035]本發(fā)明與現(xiàn)有技術相比的有益效果是:
[0036](I)本發(fā)明使用DEM表示方法中的規(guī)則網格模型,地形圖由一個帶有高程值的二維矩陣所表示,其不僅數據排列規(guī)則,且結構簡單,用其計算分析每一點的高程值具有較好的實時性,也便于計算坡度、坡向、陰影和輪廓等;
[0037](2)本發(fā)明使用浮點類型存儲高程數據點,數據結構使用鏈表結構,可避免不必要的精度存儲,解決物理連續(xù)大內存空間的分配問題;
[0038](3)本發(fā)明使用AT算法,特殊標定生成地形周圍點坐標小于0,或大于i X 2,jX2,通過對坐標的巧妙篩選,避免了在置零時對邊點及角點的繁復判斷;
[0039](4)本發(fā)明在菱形算法后增加一步錯位菱形算法,重新對坐標點進行中心點構建過程,更新原有的最小單元中心點高程數據,有效避免尖刺地形生成,保證生成地形形態(tài)更接近自然形態(tài);
[0040](5)本發(fā)明采取了局部處理策略:若輸入外部約束數據,則輸入的外部約束條件對計算得到的高程數據進行修正,該方法可處理邊界接縫問題,產生高度逼真的自然效果,該策略生成數據量大,可以根據要求生
當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
冷水江市| 拉萨市| 贡觉县| 博白县| 东宁县| 视频| 塔城市| 宜良县| 巴南区| 泗洪县| 舟曲县| 介休市| 新野县| 兴义市| 甘谷县| 石阡县| 鹤岗市| 舞钢市| 彩票| 余江县| 敦化市| 柯坪县| 湖南省| 曲周县| 茂名市| 永年县| 罗城| 龙岩市| 宜宾县| 通江县| 花垣县| 东阳市| 承德市| 琼海市| 永仁县| 越西县| 庆阳市| 马龙县| 蕉岭县| 临安市| 永平县|