劉鵬坤+樊大為+朱甲領
摘要:為了更好的實現校園全景預覽和3D 漫游導航,該文設計并實現了一個基于Web的三維數字校園系統。該系統首先采集并處理校園衛星投影圖、實景紋理貼圖、基礎測繪數據,將二維矢量數據導入SketchUp進行三維實體建模,然后將模型進行格式轉換后導入ArcGIS,最后通過CityEngine在Web服務器上發布。該系統一方面能夠為校園資源規劃提供決策支持,另一方面也可以為GIS應用提供平臺支持。
關鍵詞:三維數字校園;SketchUp;ArcGIS;CityEngine
中圖分類號:TP37 文獻標識碼:A 文章編號:1009-3044(2018)02-0180-02
全球定位系統、遙感技術、地理信息系統技術是地球空間技術的核心內容,這三方面的高速發展同樣會促進地球空間技術的發展。三維地理信息系統(3DGIS)就是在地球空間技術日益普遍和發展的背景下產生的概念。三維空間數據信息較之二維空間數據信息,它可以將抽象的空間數據可視化,人們通過直接觀察即可理解空間數據信息,從而做出較為準確的判斷。因此,三維維地理信息系統在可視化方面有著二維地理信息系統難以比擬的優勢。本文采用三維地理空間技術,針對一個面向Web的三維數字校園系統的設計與實現流程展開討論,該系統一方面能夠為校園資源規劃提供決策支持,另一方面也可以為GIS應用提供平臺支持。
1 系統總體設計
系統總體框架如圖1所示。首先通過實地測量,并綜合其他數據,采用sketchup構建三維校園模型;然后將三維校園模型導入CityEngine中,發布模型到ArcGIS Server,并創建相應的三維地圖服務;最后在客戶端實現三維地圖的訪問與基本地圖操作。
2 創建三維模型和場景
2.1 數據的采集和處理
空間數據的采集是通過衛星投影獲取數據,導入ArcGIS中處理,制作縮放比例1:500地形圖。紋理影響主要利用相機進行實地拍攝,在整個拍攝過程中分類拍攝,分別拍攝樹木、地面、窗戶、標志性建筑物等。模型屬性數據采集采用實地測量和衛星測量相結合的方式。
對于采集的空間、紋理數據不能直接構建模型,需要統一數據高程,對紋理數據進行縮小,防止建立的模型占用內存過大。
2.2 校園模型的構建
2.2.1 地上建筑構建
實景貼圖建模。運用圖像糾正、影像拼接、影像裁剪、色彩調整、大小調整等六方面技術處理圖像紋理,然后使用涂料桶將處理過后的紋理影像貼到對應模型上。例如S樓,如圖2所示。
虛擬線畫建模。用畫筆工具畫出門窗和墻面的其他部件,使用推拉工具進行三維構建。建筑表面一般都是相同的單元,我們構建其中一個單元,然后將這個單元復制,粘貼到其他單元的位置。例如音樂樓,如圖3所示。
2.2.2 地面景觀建模
模型總圖構建是以地面場景和地形圖為基礎,將分別構建的多個教學樓模型移動到地面場景圖上,與地形圖做對比,確保模型的正確性。效果如圖4所示。
3 發布3D Web Scene
3.1 實現方式對比
發布3D WEB scence 有兩種方法,一種方法是利用ArcMap擴展模塊中ArcGIS 3D Analyst工具直接導入3D文件,而后通過CityEngine工具將3D文件發布為3D Web場景,最后登錄到ArcGis online上傳發布*.3ws文件;另一種方法則是將SketchUp中的三維模型轉換成CityEngine支持的格式,導入到CityEngine中,然后導出成*.3ws文件,最后直接在軟件中共享為CityEngine Web Scence Package。
由于第一種方法在導入和導出時有版本不兼容的情況發生,所以我們最后選擇了第二種方式,并且成功發布了3D WEB scence。以下將詳細介紹第二種方式。
3.2 模型的轉換
CityEngine是一款三維城市建模與規劃設計軟件,主要應用于數字城市、城市規劃、模擬仿真、游戲開發和電影制作等領域,以其逼真的三維模型效果和快速的建模效率著稱。并且在2011年被ESRI收購后大大增強了對ArcGis軟件的支持,在發布CityEngine2012時,支持將場景發布為3D WEB scence,供用戶在ArcGis online上瀏覽。
CityEngine可以直接導入三維模型,所支持格式如圖5所示。
由于SketchUp中的模型不能直接導入到CityEngine中,因此需要在SketchUp中將所建好的三維模型轉換成CityEngine所支持的格式,SketchUp中可以導出的格式如圖6所示。
經過測試,發現DAE文件和OBJ文件導入到CityEngine之后都會出現紋理丟失的問題,KMZ文件由于坐標系的問題不能直接導入到CityEngine中。經查閱相應資料可知,SketchUp導出的dae數據存在問題,以致無法正常讀取紋理。因此需要在 SketchUp 中將模型另存為 KMZ 格式文件,而后將KMZ格式文件后綴改為zip,將該文件解壓,得到dae文件,dae文件正確,導入到CityEngine中即可。效果如圖7所示。
3.3 WebSence離線瀏覽
將導入到CityEngine中的模型導出成web場景,即可在web瀏覽器(需要支持 WebGL ,WebGL 是用于渲染 3D 圖形的 web 技術標準。常見桌面瀏覽器的最新版本都內置有 WebGL)下直接查看,實現了多種平臺之間的跨越。
通過瀏覽器打開 webviewer的離線程序,瀏覽本地文件,選擇CityEngine導出的3Dweb場景后點擊確定即可在本地在瀏覽器中與 3D 校園進行交互,從而執行以下操作:endprint
1) 執行平移、縮放、改變視角功能;2)選擇要查看的特定圖層;3)切換場景;4)模型時間滑塊功能。
3.4 WebSence在線瀏覽
CityEngine導出的校園3D Web 場景通過上傳到ArcGis的云端服務器,可以實現在線瀏覽等功能,并且支持多人共享,設置查看人權限等。
4 結束語
本文主要討論了一個面向Web的三維數字校園系統的設計與實現流程。論文首先介紹了基于SketchUp的建模關鍵技術、場景的管理發布和瀏覽;其次,在構建的校園場景的基礎上,基于CityEngine和ArcGIS Sever實現了三維地圖Web服務的發布。本系統的實現,為三維GIS開發以及虛擬現實仿真系統的實現提供了一條新思路,利用該方法創建的三維GIS系統能夠更好地滿足不同領域的一些特定需求,對其他三維可視化研究具有一定參考借鑒意義。
參考文獻:
[1] 趙雨琪,牟乃夏,張靈先.利用CityEngine進行三維校園參數化精細建模[J].測繪通報,2017(1):83-86.
[2] 齊文平,呂宜平,薛盼盼,等.基于SketchUp的三維數字校園構建 [J].礦山測量,2016,44(5):79-82.
[3] 汪浩,田豐,張文俊. 基于WebGL的交互平臺設計與實現[J]. 電子測量技術,2015,38(8):119-122.
[4] 朱安峰,王海鷹,高金頂.基于CityEngine的三維數字校園系統[J].計算機系統應用,2015,24(2):112-115.
[5] 朱麗萍,李洪奇,杜萌萌,等.基于WebGL的三維WebGIS場景實現[J].計算機工程與設計,2014,35(10):3645-3650.
[6] 花利忠,王趙兵,鄒麗妹,等.基于CityEngine與ArcGIS Flex API的校園WebGIS系統——以廈門理工學院為例[J].廈門理工學院學報,2013,21(4):57-61.
[7] 劉愛華,韓勇,張小壘,等.基于WebGL技術的網絡三維可視化研究與實現[J].地理空間信息,2012,10(05):79-81.
[8] 單楠. 基于SketchUp和ArcGIS的三維GIS開發技術研究[D].重慶:西南大學,2009.
[9] 康玲,傅俊鋒,王懷清,等.基于ArcGIS Server的WebGIS應用系統開發[J].水電能源科學,2007(1):26-29.endprint