杜鵬 屈帥
摘 要:伴隨著網絡三維技術的快速發展,網絡三維GIS也隨之崛起,并在地理學中扮演著越來越重要的角色。由于網絡數據傳輸受到帶寬等因素的影響,因此如何滿足地理信息系統大數據傳輸與處理的需要是網絡三維地理信息系統所迫切需要解決的一個問題。WebGL技術的出現則是為這一問題提供了一個解決的方法。因此,該文就以一種無插件版的Web三維技術—WebGL為基礎,介紹一個自主研發的網絡三維地理信息系統平臺,并介紹了該系統的系統主要框架,簡述了其主要的功能。
關鍵詞:網絡三維技術 WebGL 地理信息系統平臺
中圖分類號:TP391 文獻標識碼:A 文章編號:1672-3791(2015)10(c)-0026-02
隨著計算機網絡技術的不斷發展,人們的生活方式與生活習慣也在悄然發生變化,計算機與互聯網的快速崛起,特別是Web3D技術的蓬勃發展,不僅提高了人們的生產效率、改善了人們的生活方式。隨著“數字地球”、“智慧城市”等新概念的提出與建設,在一定程度上刺激了傳統GIS向服務網絡化、表現形式三維化的轉變[1]。因為大家生活在一個三維的空間里,和二維傳統GIS相比,在很多場合下,三維可視化加強了WebGIS的表現能力,用三維去表達地理實體要比二維更加直觀、清晰。因此以三維地形景觀為模型的網絡三維數字虛擬系統脫穎而出,并且日益成為三維GIS的主流之一。但是由于三維數據要比二維數據更加復雜,因此就對數據傳輸以及處理海量數據的能力提出了更高的挑戰,目前真正成型的網絡形式的三維GIS系統卻很少[3]。該文就以webgl技術為基礎搭建一個網絡三維地理信息系統平臺。
1 網絡三維簡介
1.1 網絡三維
網絡三維技術是以虛擬現實(VR)技術,多傳感交互技術以及高分辨顯示技術為基礎,利用計算機三維圖形生成逼真的虛擬環境,用來模擬人在自然環境中視、聽、說、動等行為,通過互聯網技術最終形成一個帶有交互性質的能實時渲染的網絡三維場景[2]。網絡三維技術的出現提供了另外一種表達人們所處的地理世界的方式,并且這種方式能更加直觀、形象的表現出地理實體,為用戶帶來強烈的空間感和體驗感。
但是隨著網絡三維技術的發展與應用,幾乎每個開發商都有自己的一套標準,并且該標準需要有加載組件或者預先安裝插件,并且具有兼容性差,效果顯示不佳等缺點,因此想要廣泛的應用網絡三維技術急需一套免插件的三維技術,WebGL出現為這種構想提供了實現的可能性。
1.2 WebGL技術
WebGL是一種3D繪圖標準,該標準解決了現有網絡三維最大的問題:插件問題。這種繪圖技術標準允許把JavaScript和OpenGL ES 2.0結合在一起,通過增加OpenGL ES 2.0的一個JavaScript綁定,WebGL可以利用底層圖形硬件加速功能為HTML5 Canvas提供硬件3D加速渲染,這樣Web開發人員就可以借助系統顯卡來在瀏覽器里更流暢地展示3D場景和模型了,還能創建復雜的導航,提高了數據視覺化[4]。
2 系統框架
該系統是基于WebGL技術,采用B/S開發模式,考慮到網絡三維可視化[5]系統的特殊性,盡量減少網絡阻塞,縮短在網絡上的傳輸時間,使客戶終端能快速得到所需要的三維場景,因此選擇在服務端采用Internet信息服務存放三維場景所需要的三維數據,網頁端場景顯示采用高效的空間索引技術,漸進傳輸技術和地形簡化算法來滿足多用戶并發訪問的需要。
2.1 服務器端
Web服務器端作為整個系統的后端,接受客戶端發送的服務請求和參數,提交應用服務器處理后將其返回的參數和分塊的數據再經由Web服務器返回客戶端。主要功能是采用海量空間數據庫進行數據的存儲管理以及提供實時的空間數據查詢服務。主要包括存儲各種三維數據的數據庫和一個離線數據預處理模塊。
三維數據本身數據量大,結構復雜多樣,并且網絡三維要求實時性的交互,因此需要一個專門的模塊來對這些三維數據進行組織和管理,采用細節分層技術實現對不同類型數據的一體化管理,從數據到三維虛擬顯示的快速轉換,并把客戶端請求的數據提建立索引,進行壓縮,傳給客戶端。三維數據數據庫主要包括:三維模型數據庫、DEM數據庫、屬性數據庫。這些數據庫不僅存放了地理數據例如矢量數據、DEM數據、三維模型數據,還記錄了各個三維實體的屬性信息、對三維模型的描述性信息等。
2.2 客戶端
客戶端根據用戶在場景中的瀏覽位置的不同,將不斷向服務器端發送新的數據請求,要求傳送與當前用戶瀏覽位置相關的三維場景數據。包括三維地形數據、紋理圖像數據等??蛻舳嗽谑盏竭@些場景數據后,能夠對其進行實時繪制和顯示。但因為三維數