999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于DirectX的三維地理信息引擎設計與實現

2011-04-18 10:28:50向澤君薛梅
城市勘測 2011年2期
關鍵詞:引擎界面程序

向澤君,薛梅

(重慶市勘測院,重慶 400020)

基于DirectX的三維地理信息引擎設計與實現

向澤君?,薛梅

(重慶市勘測院,重慶 400020)

通過分析國內外三維地理信息系統技術現狀,提出了基于DirectX實現三維地理信息引擎的架構設計,并在此基礎上自主開發了三維地理信息引擎Spatial3D,并成功應用于沙盤展示、應急演練、GPS跟蹤等多個業務領域。

三維地理信息系統;DirectX;3DGIS

1 前 言

近年來,隨著三維可視化技術取得突破性進展以及計算機硬件效率的大幅度提升,三維地理信息系統(3DGIS)逐漸走入人們視野,并成為地理信息業發展的新方向,在規劃、水利、應急等領域發揮著越來越多的作用。國內外地理信息平臺商紛紛推出了各種商用三維地理信息平臺,這些商用三維地理信息平臺普遍具有價格高昂、擴展不易的問題,阻礙了三維地理信息系統在中小型應用中的推廣。

本文通過分析國內外三維地理信息系統技術現狀,提出了基于DirectX的三維地理信息引擎的架構設計及關鍵技術,并在此基礎上開發了可擴展、易配置的自主三維地理信息引擎Spatial3D,成功應用于沙盤展示、應急演練、GPS等多個領域。

2 國內外三維地理信息系統技術現狀[2]

由于三維建模和繪制技術突破,現有的國內外三維地理信息技術相對比較成熟,主要包括商用和開源兩大類。

代表性的商用三維地理信息平臺為Skyline和ArcGlobe。Skyline是美國Skyline公司為網絡運營三維地理信息提供的企業級解決方案,給客戶提供一站式服務,并開放了所有的接口。ArcGlobe是ESRI公司開發的ArcGIS產品系列之一,它使用標準的ArcGIS數據源和圖層,提供了海量地理數據的交互式可視化,允許全球數據、本地數據和街道級數據間的無縫過渡。和Skyline相比,ArcGlobe的顯示效果有所不及,其主要長處在于強大后臺空間分析功能。

開源三維地理信息平臺中最具代表性的是World Wind。它是NASA(美國國家航空與航天管理局)發布的開源軟件,通過可視化的地球儀,將NASA、USGS(美國地質局)以及其他WMS(基于網絡的地圖服務)服務商提供的圖像通過一個三維的地球模型展現。軟件用C#編寫,調用微軟的SQL Server影像庫來進行全球地形三維顯示。目前,包括國內部分三維GIS軟件在內的全球許多主流三維軟件都是以WorldWind為技術內核發展而來。

3 三維地理信息引擎總體設計

3.1 總體目標

由于人力和投入限制,在規模上,自主三維地理信息引擎不能和商用三維地理信息平臺相比,但具備成本低廉、應用靈活的特點。自主三維地理信息引擎應實現以下目標:

(1)低硬件配置:不需要獨立顯卡支撐,在普通臺式機或筆記本上也能瀏覽;

(2)低平臺依賴:在最小應用情況下,不依賴任何第三方地理信息系統平臺,節約成本;

(3)高配置性:使用外部配置的方式,可在很短時間內裝配出適用于不同區域的三維沙盤;

(4)高擴展性:提供良好的插件機制,讓核心研發人員之外的技術人員擴展引擎功能,如GPS跟蹤、視頻監控、空間搜索等;

(5)高標準性:支持通用數據格式,并可擴展這些輸入。例如Shape文件、GeoDatabase等。

3.2 架構設計

經過大量論證[1,3,5],自主三維地理信息引擎(Spatial3D)架構主要包括基礎程序集、場景繪制程序集、數據加載程序集、場景管理程序集、界面程序集五個部分,其中場景繪制程序集和數據加載程序集是可以提供給二次開發者擴展的(如圖1)。

圖1 Spatial3D引擎架構圖

各程序集主要作用如下:

(1)基礎程序集。此部分是Spatial3D的基礎,提供配置結構定義、基礎空間模型定義、界面模型定義、三維要素模型定義、公共結構定義、公共數據結構及算法實現等內容。

(2)數據加載程序集。依賴于基礎程序集,實現其中的數據加載接口。在Spatial3D中,每個圖層都配置了一個數據加載類,這為多數據源的程序部署提供了最大便利性。根據實際數據源格式,可對數據加載類進行各種擴充。考慮到軟件環境依賴性,還可將其拆分為不同的程序集。根據部署環境決定選用哪一個數據加載類。

(3)場景繪制程序集。此部分集中體現了對Direct3D技術的應用,依賴于DirectX 9,是Spatial3D的核心。

(4)場景管理程序集:其中SceneManager起到工廠作用,它通過讀取配置,進行場景的初始化以及各個圖層的組裝,并控制圖層加載、繪制及資源銷毀,保證非托管資源的有效釋放。同時對外提供地圖瀏覽、查詢等各種公用API接口。

(5)界面程序集:包括場景管理程序集基礎上封裝的用戶控件,使三維應用變得更加簡單。

4 關鍵技術及實現[4]

4.1 依賴倒置及可配置化

依賴倒置和可配置化是提高應用程序擴展性、伸縮性和配置性的主要方式。考慮到不同的數據源及應用場景,有必要分離數據加載,而場景繪制的聲明與實現,則通過配置進行對象的創建和初始化。所有實現相關類都采用了無參數的構造函數,通過設置屬性的方式進行注入,通過顯示實現Idisposable接口進行資源釋放。Spatial3D中所有動態信息都可以通過配置進行定義。在配置節中主要的配置節點包括:

(1)場景采用的核心繪制程序集定義

(2)環境設置,包括攝影機、燈光、天空盒、霧、參考坐標系

(3)圖層集合,每個圖層包括數據源、顯示樣式及數據加載類和場景繪制類名稱

(4)所有數據加載類

(5)所有場景繪制類

(6)菜單

(7)狀態欄

4.2 圖層加載多線程化

在三維場景中,常常包含多個圖層(地形、道路、建筑、地標…),如果采用單線程進行順序的加載,用戶體驗將非常糟糕,如WorldWind采用單線程方式進行加載和繪制,從進入應用系統到顯示場景,要等上數分鐘之久。

在Spatial3D中,場景管理器統一提供對外接口,包括導航、圖層管理和數據查詢定位,其中所有地物要素都是以圖層的方式進行管理的,包含名稱、編碼、是否可見、最大最小顯示高度、數據來源、數據加載類、場景繪制類、圖層的顯示樣式等。圖層加載和繪制過程中,當一個圖層創建后,它需要首先創建對應的加載和繪制類,由數據加載類進行數據加載,然后再根據數據類型進行場景繪制,該過程使用多線程技術,大大提高了數據加載和繪制速度,程序流暢、可操控性好。

4.3 界面設計定制化

Spatial3D參照成熟商用軟件界面要素,搭建了一套可擴展、易配置的界面模型。將所有界面要素分為四種類型:菜單、側邊欄、狀態欄、對話框窗體。

圖2 Spatial3D界面構成

菜單通常停靠在界面的上方。菜單中包含一個或多個按鈕。用于響應用戶的各種操作。側邊欄通常停靠在界面左端,常作為操作面板使用,例如圖層管理等。狀態欄通常停靠在界面下端,用于表現標志、提供使用幫助以及記錄當前位置等。對話框窗體通常浮動在界面中央,用于定位、查詢等相關操作,如圖2所示。

4.4 場景繪制技術擴充化

不同的地物要素,所對應的繪制方法也有所不同。在二維世界中同樣是線狀要素的管網和道路,在三維世界中有著很大的區別。例如道路不需要考慮管徑,而管網則必須考慮,它們算法的差異性是非常巨大的。Spatial3D為每種基礎地物要素編寫了單個的繪制算法,一個繪制算法代表一個場景繪制類。主要包括:

(1)簡單建筑物繪制

(2)地形繪制

(3)道路繪制

(4)三維地標繪制

(5)3Dmax模型繪制

(6)GPS跟蹤及回放繪制

(7)統計繪制

圖3 主要繪制效果

隨著應用范圍的擴展,這些場景繪制類還可逐漸增加,出現管線繪制類、土地利用繪制類等多種繪制類。部分效果如圖3所示。

4.5 通用數據加載技術

Spatial3D默認采用Shape文件格式讀取及其四叉樹的空間索引算法。Shape文件是已經公開的格式,不需要依賴于任何地理信息平臺。同時,采用四叉樹空間索引算法,最快索引到某一范圍的空間數據,大大提高加載速度。

5 結 語

基于DirectX的自主三維地理信息引擎Spatial3D由于其低廉的成本和靈活的配置性,已經體現出一定的商業價值,滿足了中小型項目應用的需要。目前已驗證可運行的最低硬件環境為:處理器:Intel?Pentium?4 CPU 2.40GHZ,內存:1.00 GB,顯卡:GeForce4 MX 440-8X(顯存64MB),而運行的軟件環境為:WindowsXP Professional,.Net Framework 2.0,DirectX 9 Redist Pack。下一步,將繼續加強對場景繪制類的擴充,使其更加廣泛地應用于各個領域。

[1] Fletcher DunnParberryIan.3D Math Primer for Graphics and Game Development[M].Wordware Publishing,2005

[2] 吳軍,魚小剛,郭英.二維、三維GIS系統的結合研究與應用[M].北京:數字石油和化工,2009

[3] 劉艷,馬勁松,張永玉.3DGIS中空間對象的存儲與快速查詢[J].測繪科學,2009,34(4):147~149

[4] 宇林軍,孫丹峰,李紅.基于緊密型二三維結合的GIS構架與系統實現[J].地理與地理信息科學,2009,25(5): 17~20

[5] 蘇莉.三維GIS紋理坐標數據管理方法的研究[J].科技信息,2009(5):125~127

Design AndImplementation of DirectX-based Three-demensial Geographic Information Engine

Xiang ZeJun,Xue Mei
(Chongqing Surveying Institute,Chongqing 400020,China)

By analyzing the domestic and international status of three-dimensional geographic information system technology,this paper propos architecture implemented by DirectX based on three-dimensional Geographic Information Engine,and self-developed three-dimensional Geographic Information Engine named Spatial3D,and successfully applied to sand table display,emergency drills,GPS tracking and other business areas.

Three-dimensional Geographic Information System;DirectX;3DGIS

1672-8262(2011)02-7-03

P208

A

2011—01—17

向澤君(1965—),男,正高職高級工程師,主要從事水利工程勘察設計、城市勘測管理和技術研究、及數字城市建設研究。

重慶市信息產業發展基金項目(2009-009)

猜你喜歡
引擎界面程序
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
“程序猿”的生活什么樣
藍谷: “涉藍”新引擎
商周刊(2017年22期)2017-11-09 05:08:31
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
人機交互界面發展趨勢研究
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
手機界面中圖形符號的發展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
無形的引擎
河南電力(2015年5期)2015-06-08 06:01:46
主站蜘蛛池模板: 国产91高跟丝袜| 91久久性奴调教国产免费| 日韩精品一区二区三区免费| 多人乱p欧美在线观看| 亚洲伊人久久精品影院| 亚洲欧美另类视频| 四虎在线高清无码| 亚洲色婷婷一区二区| 久久久久免费精品国产| 一本色道久久88综合日韩精品| 亚洲一区波多野结衣二区三区| 亚洲色图欧美在线| 中文字幕久久精品波多野结| Jizz国产色系免费| 国产尤物在线播放| 久久免费成人| 日韩人妻无码制服丝袜视频| 国产尹人香蕉综合在线电影| 中文字幕av一区二区三区欲色| 日韩av无码DVD| 久久久久青草线综合超碰| 日本久久网站| 久久性妇女精品免费| 亚洲中文字幕23页在线| 99热这里只有精品在线播放| 亚洲欧美一区二区三区图片| 免费毛片在线| 精品三级在线| 毛片在线区| 国产三级a| 小蝌蚪亚洲精品国产| 直接黄91麻豆网站| 在线免费无码视频| 国产丰满大乳无码免费播放| 无码人中文字幕| 日本成人在线不卡视频| 久久中文无码精品| 91青青草视频在线观看的| 成人午夜视频在线| 亚洲中文字幕在线观看| 1769国产精品免费视频| 波多野结衣一区二区三区四区| 91亚洲影院| 韩日无码在线不卡| 蜜臀AVWWW国产天堂| 午夜国产精品视频黄| 中文字幕天无码久久精品视频免费 | 亚洲人成电影在线播放| 亚洲无码四虎黄色网站| 97国产成人无码精品久久久| 国产精品七七在线播放| 一级毛片免费观看久| 久久综合AV免费观看| 日本高清免费不卡视频| 欧美日韩国产精品综合| 亚洲欧洲免费视频| 99久久无色码中文字幕| 最新国产高清在线| 国产精品网址在线观看你懂的| 国产玖玖视频| 国产99精品视频| 激情无码字幕综合| 国产欧美精品专区一区二区| 黄色网页在线播放| 精品少妇人妻一区二区| 91九色视频网| 国产视频大全| 久久久久亚洲AV成人网站软件| yy6080理论大片一级久久| 国产精品蜜芽在线观看| 国产9191精品免费观看| 久久免费视频6| 久久综合五月| 亚洲免费毛片| 国产精欧美一区二区三区| 91成人在线免费视频| 激情综合网激情综合| 亚洲精品成人福利在线电影| 一区二区偷拍美女撒尿视频| 97国产在线观看| 亚洲精品视频在线观看视频| 四虎成人免费毛片|