趙 群 陳建平
摘要通過介紹三維模型TIN的建立、三維模型的數據組織及數據結構的實現等建立三維地貌景觀模型,并將其應用到旅游、景觀規劃、地貌成因分析、景觀評價等領域,建立三維可視化應用系統,實現對應用系統的可視化操作和分析。
關鍵詞 三維模型;可視化;數據結構;關鍵技術
中圖分類號TP317.4文獻標識碼A文章編號 1007-5739(2009)01-0261-03
隨著計算機技術的不斷發展,GIS的軟件不斷升級,地形的建造從開始的2維或2.5維,到現在3維模型的實現已經成為可能。實際上三維模型的建立可以應用在許多方面,比如:急救服務(對服務地點的快速通達);城市規劃(規劃對象的選址、社區規劃、公眾參與、設計評審);無線電通信(高層建筑對無線通訊的干擾);建筑(環境被保護與被破壞);市政設施管理(供水、排水、電力、道路、軌道交通基礎設施);市場與經濟開發(位置選擇、宣傳鼓動);地產分析(樓層空間與土地可用性);旅游與娛樂(城市景點宣傳、路線、新到游客印象);電子商務;環境(污染影響);軍事;教育與學習等。
1國內外的三維可視化系統應用現狀
自20世紀80年代以來,國外已陸續對三維建模及應用開發加大投入,軍轉民的產品也逐漸多起來,為民用開發與應用的產品也越來越廣泛和普及。
在紐約基于GIS的、可以獲得三維的本城市地理與幾何信息的查訊系統紛紛出現。如城市信息技術與電信部(DOITT)安裝的這類系統,它的應用范圍遍及環境保護、安全和刑事。實力較強的技術開發公司如解析測量技術公司(Analytical Surveys Inc.Technology,ASI)為紐約開發了GIS和正射影像數據,從GIS中獲得建筑物高度數據,從正射像片上獲得地表紋理而建立三維模型。環境模擬中心(Enviro-nmental Simulation Center, ESC)開發了各種3D模型用于曼哈頓及其他城區,它們的特點是可標識(表示)到各商用樓層空間,為進一步換算到具體單元的需要成為可能。
在加拿大最大的城市多倫多,城市規劃局建立了該城市的數字三維模型來支持規劃管理工作已有10多年歷史。
瑞士蘇黎世理工大學的Gruen教授有一個研究項目是為西歐各國的典型歐式風格的城市建立三維模型,目前已有蘇黎世、漢堡、伯爾尼等。20世紀90年代中期,由英國公司生產出具有高質量攝影真實感的建筑視圖。他們為了在倫敦全城各部分進行不同精度的測量,采用1∶100比例尺詳細地測量了門窗、立面、屋面形態。
在國外,近些年地質信息可視化模型和分析系統研究發展較快。MINCOM、DGI等公司分別在露天礦開采、石油物探和石油開采等領域進行了卓有成效的研究,他們開發的空間地質模型及其可視化系統已成為商品化軟件,并在中國市場上銷售。
陳昌彥等于1997年開發研制的“邊坡工程地質信息的三維可視化”系統,根據實測的離散點信息建立起三維可視化模型,顯示任意位置的剖面和平切圖面,可以計算開挖體的體積,并成功地應用于長江三峽永久船閘邊坡工程的三維地質結構的模擬和三維再現工作中。柴賀軍等近幾年結合大型水電工程開始研制開發巖體結構三維模型,利用形成的三維可視化模型,實現巖體的穩定性分析和工程適宜性評價等方面的工作擬繼續進行和完善。
總體來看,目前三維模擬在地貌景觀、地質成因分析、景觀評價的應用還是屬于空白。因此,有必要對此方面的應用進行一下探討。
2地貌景觀三維可視化系統框架
根據以上的研究和調查,并結合專業,筆者意在設計一個地貌景觀的三維可視化系統,此系統不僅建立地上的地貌景觀模型,還要建立地下部分相應的三維模型。此系統可以進行旅游地貌景觀的規劃、旅游地貌景觀的開發與評價、旅游地貌景觀的成因的分析,同時還可以指導旅游者進行出行。
2.1建立三維可視化的地形庫
由圖1可知,三維可視化地形庫的建立最重要的是高程數據,它將一塊地理地形劃分成一個由很多三角形的網格組成的面,以一定的地理坐標(X,Y)為起始點(比如左下角坐標),很規則地由X=?、Y=?為單位將整個平面劃成一定的行和列,每個交點就是組成三角形網格的頂點,如果為這些間隔交點都賦予一個相應的實際測量得到的高度值(Z),就形成這塊地區的高程數據,可以對其進行拉伸,就可以生成基本的三維地表;航片或衛片重要用于在三維地表上生成相應的基本紋理;文化特征數據(GIS)是一些測繪得到的矢量數據,它擁有精確的地理坐標和各種特征編碼,用于描述各種人文景觀和自然景觀,如建筑、道路、電力電話線和桿、塔、橋梁及各種森林、河流等,在三維地形數據庫中這些特征數據是要借助于特定三維模型和特定紋理來表達。當對這些數據整理編輯校準和組織以后,通過特定的軟件功能很強的工具對它們進行集成,然后可以通過一些預覽工具做少量的調整,最后就可以建造生成出需要的三維實時可視化地形。
2.2地貌景觀三維可視化系統框架
地貌景觀三維可視化系統框架如圖2所示。
3地貌景觀三維可視化系統模型
3.1數字地形模型建立
三維可視化系統的關鍵在于DEM(數字高程模型)如何進行表達。在地理信息中,DEM主要有3種表示模型:規則格網模型(Grid)、等高線模型和不規則三角網模型(Tria-ngulated Irregular Network,TIN)。
TIN模型能夠充分反映地面高程細節的變化,其真實程度由地形點的密度所決定,TIN模型適合于表達復雜地形地貌形態,又由于TIN 模型有以上表述的優點,因此在可視化系統的研究中一般都采用TIN模型。
3.2地形地貌實體的數字建模
按照實體對象的屬性,可將其分別用點、線、面、體等4類圖形數據結構來表達。如山體地形地貌環境的存儲結構為:
StructureHillpart{
Int Part_ID://山體局部標識
Char Part_Code://山體局部編碼
Strcture Body *Bodylist://山體局部數組
Attributes_List:}//山體局部屬性列表
StructureBody{
Int Body_ID://體(或面或點)標識
Int Part_ID://包括該體(或面或點)的山體局部標識
Char Part_Code://山體局部編碼
Int Body_Type://體(或面或點)構造類型
Strcture Mesh *Meshlist://構成體(或面或點)的面(或線或點)數組
Attributes_list:}//體屬性列表
3.3TIN 的實現
所采用的Delaunay生成算法主要分為兩步。
(1)先要生成一個包括所有離散數據點的凸殼;對于凸殼的生成采用格雷厄姆算法。
格雷厄姆算法的實現基本思想:選取值最小的點作為參考點,將離散數據點按照它們與參考點之間的角度的大小對數組進行排序。其中選取x坐標最小點作為參考點有2個原因:一是x最小的數據點必定是凸殼的頂點;二是選取x最小的點作為參考點,可以使其他數據點與參考點之間的夾角在[-π/2,π/2]之間,在這個區間中,角度的正切值是隨角度的增大而增大的,有利于編程實現。另外,使用離散數據數目加1的數組來存儲數據點,并將排序后的數據點的第1點的坐標存入數組的最末位置上。
(2)利用凸殼生成一個初始的三角網,再逐個加入其他離散點,生成最終的三角網。該算法采用Bowyer-Watson算法。
Bowyer-Watson算法的基本思想:①假定已生成了連接若干個頂點的Delaunay三角網格;②加入一個新的節點,找出所有外接圓包含新加入節點的三角形,并將這些三角形刪除,形成一個空腔;③將空腔的節點與新加入的節點連接,形成新的Delaunay三角網格;④調整數據結構,新生成的三角形的數據填充被刪除三角形的數據,余者添加在數組的尾部;⑤返回第2步,直至所有的節點都加入為止。
對于凸殼生成采用的格雷厄姆算法,該算法是求解平面點集凸殼問題的最佳算法,算法復雜度為0(n logn)。對于三角網上加入其他數據點的算法是基于Bowyer-Watson算法的思想,該算法能很好地生成符合Delaunay法則的三角網,也就是在地形可視化時需要的TIN模型。
3.4動態實體參數化數字建模
動態實體的參數化數字模型在其數據結構中除了描述幾何特征及屬性外,反映地形地貌的動態變化過程,還體現時間特征。參數化實體建模是一種通過相關幾何關系組合一系列用參數控制的特征部件而構造整個幾何結構模型的技術。整個建模過程可描述成一組特征部件的組裝過程,而每個部件都由一些關鍵的參數來定義。例如,地貌中的江、河、湖、山川、溶洞等景觀,可以通過采樣取點從而獲得其地形地貌特征點的坐標,依據坐標建立模型,實現其三維顯示。另外,在隨時間變遷的過程中,地貌是不斷變化的。因此,可以根據建立動態的模型實現對地貌景觀的動態三維的顯示,并做出未來發展趨勢的預測。
3.5地貌景觀三維可視化技術
三維可視化圖形的旋轉、透視和切剖面的算法已近成熟,被廣泛地應用,地質結構三維圖形的形成和處理多采用以下方法。
(1)投影變換數學表示法。三維空間任意一點可以用齊次坐標表示為(x,y,z,1),由此三維空間點集坐標可以用矩陣表示:
三維空間投影變換即三維坐標矩陣與投影變換矩陣的乘積是:
P′=PT
取T矩陣為正軸側投影變換矩陣,即:
其中,θ表示三維立體旋轉的傾角。Φ表示三維立體旋轉的傾角。
若取三維空間任意一點坐標的空間變換,可以寫成如下數字表達式:
x′=xcosθ-ysinθ
y′=zcosΦ-(xsinθsinΦ+ycosθsinΦ)
如果是動態三維的顯示,可以加上時間一維。
(2)空間立體剖面切割。空間立體剖面切割是指用戶用鼠標直接在屏幕上對三維體進行x、y、z等3個方向剖切。由此,用戶可以方便地觀察模擬塊體內部地質構造及參數特征的變化,以實現對地質整體空間的宏觀認識。空間立體剖面切割實現技術是采用固定某空間一個坐標,然后由用戶指定待切塊體的定位屏幕坐標反求空間坐標以實現空間立體的剖面切割與水平切割。其反求空間坐標算法:
(a)固定Z坐標求(X,Y):
X=(sinθ*cosθ*xp-(yp-Z*cosθ)*sinθ)/aa
Y=-(sinθ*sinθ*xp+(yp-c)*cosθ)/aa
c=Z*cosΦ
aa=sinθ*sinΦ*sinθ+sinθ*cosθ*cosθ
(b)固定Y坐標求(X,Z):
Y=-(xp-X*cosθ)/cosθ
Z=(yp+c+Y*cosθ*sinθ)/cosΦ
c=X*sinθ*sinΦ
(c)固定X坐標求(Y,Z):
X=(xp+Y*sinθ)/cosθ
Z=(yp+c+Y*cosθ*sinθ)/cosΦ
c=Y*cosθ*sinΦ
其中:xp、yp是屏幕定位坐標。θ、Φ是方位角和傾角。
4旅游地貌景觀規劃三維可視化系統可操作與分析
4.1可視化三維地貌查詢
由于二維屏幕顯示的點與三維模型的實際點不是一一對應,因此當對地形地貌查詢時要進行二維到三維的轉化。如果以屏幕上的點進行查詢,則到對應的三維真實坐標,需要一個三維到二維的投影的變換;如果以屬性信息的對應山體的ID號查詢,則以語句來查詢山體的屬性。
4.2三維數字地貌的動態顯示
通過遙感手段獲得地形地貌的影像的亮度值,將其疊加在TIN的模型上,從而提高真實光照和表面紋理的顯示效果。另外,建立參數化的動態演示模型,加入時間特征,使地形地貌呈現出隨時間的變化而變化的動態的三維數字顯示。
4.3地貌景觀成因分析
在演示地形地貌的同時,還可以通過不同的途徑演示所呈現地貌的成因。因各種地貌的成因比較復雜,獲取地下數據的途徑也比較復雜,因此可以不同情況不同對待,有的地貌景觀可以采用多媒體的方式進行演示;有的可以獲取相關數據的,便可以建立模型實現三維地貌成因的演示;有些高山便可以建立2維或2.5維的模型進行演示。
4.4地貌景觀評價
可以通過選擇景觀評價模型,考慮地貌景觀影響因子,并對各種影響因子采集數據,利用系統提供的數據,進行計算,以此來對地貌景觀進行評價。同時可以將評價的結果動態顯示在三維數字地貌模型上的具體區域。
5結語
建立地形地貌景觀三維可視化系統,此系統不僅可以應用到旅游規劃、景觀評價、地貌成因分析等方面,還可以供旅游者查詢,并可以身臨其境地漫游,進行親身感受。
本系統提供可視化三維地貌查詢、三維數字地貌的動態顯示、地貌景觀成因分析、地貌景觀評價等操作和分析功能。通過直觀的三維模型和強大數據支持為旅游及規劃等行業提供強有力的工具。
6參考文獻
[1] WHITE M J.Visualization of the El Berrocal granite:application to rock engineering[J].Engineering geology,1998(49):185-194.
[2] ROLAND PUSCH.Practical visualization of rock structure[J].Enginee-ring Geological,1998(49):231-236.
[3] 陳昌彥,張菊明,杜永康,等.邊坡工程地質信息的三維可視化及其在三峽船閘邊坡工程中的應用[J].巖土工程學報,1998(4):1-6.
[4] 馬安鵬.Visual C ++6.0程序設計導學[M].北京:清華大學出版社,2002.
[5] 鐘登華,張偉波,鄭家祥.大型地下洞室群施工系統仿真[J].水利學報,2001(9):86-91.
[6] 章孝燦,黃智才,戴企成,等.GIS中基于拓撲結構和凸殼技術的快速TIN生成算法[J].計算機學報,2002,25(11):1212-1218.
[7] 鄔吉明,沈隆均,張景琳.Delaunay三角網格的一種快速生成法[J].數值計算與計算機應用,2001,22(4):267-275.
[8] 柴賀軍,黃地龍,黃潤秋.地質結構面三維擴展模型研究[J].地質災害與環境保護,1999(2):73-76.
[9] 鄔倫.地理信息系統原理方法和應用[M].北京:科學出版社,2002.
[10] 陳述彭,魯學軍,周成虎.地理信息系統導論[M].北京:科學出版社,1999.
[11] JEAGER C.Engineering problems and rock mechanic[J].Engineering Geology,1973(7):1123-1131.
[12] 姜云,王蘭生.地理信息系統在山區城市地面巖體穩定性管理與控制中的應用[J].地質災害與環境保護,1994(1):32-38.
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文