• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      數(shù)字城市三維景觀模型的批量添加及管理研究

      2012-12-11 06:08:02鄧德標(biāo)方源敏高晉寧
      測(cè)繪通報(bào) 2012年1期
      關(guān)鍵詞:批量建模景觀

      鄧德標(biāo),方源敏,高晉寧

      (昆明理工大學(xué)國土資源工程學(xué)院,云南昆明650093)

      一、引 言

      二維GIS自20世紀(jì)60年代發(fā)展至今,已應(yīng)用到土地管理、交通、電力、電信、城市管網(wǎng)、消防、城市規(guī)劃等領(lǐng)域[1]。近年來隨著三維GIS技術(shù)的迅猛發(fā)展,其在現(xiàn)代城市的規(guī)劃、建設(shè)、管理及發(fā)展等方面開始發(fā)揮重要作用。如何利用數(shù)字化手段管理城市,成為地理信息科學(xué)的一個(gè)重要研究方向,三維地理信息虛擬仿真技術(shù)也因此成為數(shù)字規(guī)劃新的技術(shù)亮點(diǎn)[2]。

      利用現(xiàn)代化數(shù)字化方式管理城市,首先需要建立逼真的精確的三維城市景觀。對(duì)于小范圍的三維景觀建設(shè),可以通過對(duì)地物逐個(gè)進(jìn)行信息采集和創(chuàng)建模型的方法來實(shí)現(xiàn)。但對(duì)于大范圍城市景觀場景的創(chuàng)建,工作量和成本會(huì)大大增加,所以需要采用一種合理的手段來解決。本文提出利用城市地物的不同重要程度來對(duì)城市地物進(jìn)行區(qū)別化建模的方法:對(duì)標(biāo)志性和重要建筑物(如政府機(jī)關(guān)大樓、學(xué)校等)進(jìn)行精細(xì)化建模,保證其在城市中的突出地位;對(duì)在城市中存在的大量一般模型(如居民住宅等)采用基于ArcGIS與Google SketchUp相結(jié)合的方式來批量建模;對(duì)大量的城市部件采用建立城市部件模型庫的方式來進(jìn)行建模。

      相對(duì)于傳統(tǒng)的人機(jī)交互式的作業(yè)方法,上述建模方法具有制作精度高、工作量小、制作周期短、工作效率高等優(yōu)點(diǎn),實(shí)現(xiàn)大規(guī)模城市場景快速建模效果明顯,可以普及使用。

      二、TerraDeveloper的使用及其主要接口

      TerraDeveloper是TerraExplorer Pro的擴(kuò)展模塊和二次開發(fā)工具,完全基于COM組件技術(shù)標(biāo)準(zhǔn),通過TerraExplorer API提供接口,支持用 VB、VC、C#等語言根據(jù)實(shí)際需要進(jìn)行開發(fā)[3]。

      要使用TerraExplorer API接口,首先需要安裝TerraExplorer Plus,添加 TerraExplorerX 1.0 Type Library引用;然后在工具箱中添加TE3DWindow(三維窗體)、TEInformationWindow(信息樹窗口)和Navigation Map(導(dǎo)航圖)控件;最后通過調(diào)用Terra-ExplorerX里相關(guān)的類型和函數(shù)即可實(shí)現(xiàn)相應(yīng)的功能。TerraExplorer包含的接口如下。

      1)ISGWorld6接口:是大多數(shù)TerraExplorer接口的主入口點(diǎn),通過該接口可以管理應(yīng)用程序、3D對(duì)象及消息的處理事件。包含Project、Navigate、Creator、Window、Analysis等屬性。

      2)TerraExplorer5接口:用于描述用戶接口的相關(guān)細(xì)節(jié)和操縱文件,如工程文件名,工程環(huán)境參數(shù)ProjectPrarm,用于裝載.FIL或MPT文件的Load函數(shù),保存當(dāng)前工程文件的Save函數(shù)。

      3)IRender5接口:獲取當(dāng)前三維窗口的信息,如ScreenToWorld函數(shù)用于獲取屏幕上某點(diǎn)的地理坐標(biāo),SetMouseCursor和 SetMouseInputMode函數(shù)分別用于設(shè)置鼠標(biāo)的指針類型及控制其輸入模式。

      4)ICoordSys3接口:提供當(dāng)前坐標(biāo)系統(tǒng)的相關(guān)信息,用戶可自定義坐標(biāo)系統(tǒng),調(diào)用MoveCoord函數(shù)調(diào)節(jié)東西和南北的偏移量來移動(dòng)二維坐標(biāo)。Get-Distance函數(shù)可獲取圖上兩點(diǎn)間的水平距離,若要獲取兩個(gè)三維點(diǎn)的空間距離則用GetDistanceEx函數(shù),獲取由兩點(diǎn)確定的直線與北方向的夾角則用GetAimingAngles函數(shù)。

      5)IObjectManager51接口:管理三維窗口中的所有對(duì)象,可進(jìn)行添加、刪除、修改三維窗口中的對(duì)象,如GetObject函數(shù)可獲取對(duì)象,CreateLabel函數(shù)可創(chuàng)建標(biāo)簽,CreatePolyline函數(shù)創(chuàng)建折線,Create3DPolygon函數(shù)創(chuàng)建三維多邊形。

      三、批量添加模型

      1.模型格式

      Skyline支持添加的景觀模型有*.x、*xpc、*flt、*fpc、*xpl、* xpl2、*dae 7 種格式??紤]到TerraExplorer Pro軟件提供的模型制作精度不高,因此三維景觀模型主要使用3D MAX或Maya等建模軟件制作[4]。制作模型時(shí)需要設(shè)定模型的中心點(diǎn)、方向和大小,也可以在模型添加后進(jìn)行調(diào)整,但為了減少后處理的工作及提高效率,故建議在模型制作時(shí)把相關(guān)參數(shù)設(shè)置好。

      2.模型添加過程

      在城市模型中的一些細(xì)節(jié)部分,如路燈、郵筒、下水井、樹木等可認(rèn)為是形狀相同的物體。如果每個(gè)物體模型都人機(jī)交互式地添加,工作量太大,而且模型的地理位置精度得不到保障。如果能夠找出模型插入點(diǎn)之間的規(guī)律,利用數(shù)學(xué)公式計(jì)算各個(gè)插入點(diǎn)的坐標(biāo),則能實(shí)現(xiàn)模型的批量添加。

      添加模型所調(diào)用的函數(shù)是CreateModel,該函數(shù)有6個(gè)參數(shù),依次是位置、模型文件名、縮放系數(shù)、模型類型、項(xiàng)目樹中的ID號(hào)碼和名稱。其中前兩個(gè)參數(shù)是必須的,其余都是可選的,因此只要確定添加的位置和模型文件名。由于模型添加時(shí)忽略模型高程,直接將模型添加到已打開的工程文件所在的平面上,所以只需確定模型的平面坐標(biāo)。有一點(diǎn)要注意的是,添加模型所需的位置是經(jīng)度和緯度,坐標(biāo)系是當(dāng)前地形模型的坐標(biāo)系。

      圖1所示是模型的添加流程圖,模型導(dǎo)入時(shí)可以一次導(dǎo)入多個(gè)不同的模型,但每一次添加只能選擇一種模型。添加前可以設(shè)置模型參數(shù),包括水平方向Yaw、前后仰角角Pitch、左右偏角Roll和相鄰模型的水平間距,通過3個(gè)角度參數(shù)就可以控制模型在不同位置的朝向。

      3.添加方式

      模型的添加方式有以下4種:

      1)鼠標(biāo)點(diǎn)擊:通過操縱鼠標(biāo)在視圖窗口上點(diǎn)擊左鍵來確定模型插入的位置。在屏幕上選取一個(gè)點(diǎn)后,通過ScreenToWorld函數(shù)將屏幕坐標(biāo)轉(zhuǎn)換為經(jīng)緯度,并在程序界面左邊的列表中顯示出來。要結(jié)束時(shí)只需雙擊鼠標(biāo)左鍵,通過調(diào)用CreateModel函數(shù)將選定的模型按照選取的位置添加到圖中。該方法適合模型分布沒有規(guī)律的情況,還可以在雙擊前修改模型坐標(biāo)列表的數(shù)據(jù)。

      圖1 模型添加流程圖

      2)直線定距:在指定直線上按照設(shè)定的間距添加模型。通過在視圖上選取起點(diǎn)和終點(diǎn)指定直線,首先調(diào)用ScreenToWorld函數(shù)將起終點(diǎn)坐標(biāo)轉(zhuǎn)換為經(jīng)緯度;然后調(diào)用GetDistance函數(shù)獲得兩點(diǎn)之間的水平距離以確定插入點(diǎn)的個(gè)數(shù);調(diào)用GetAimingAngles函數(shù)獲取該直線與北方向的方位角α;接著按照式(1)計(jì)算各個(gè)插入點(diǎn)相對(duì)于直線起點(diǎn)的偏移量(ΔLi,ΔBi),偏 移 量 的 單 位 是 米;最 后 調(diào) 用ICoordSys3接口的MoveCoord函數(shù)將距離偏移量轉(zhuǎn)為經(jīng)緯度方向的偏移量并加上起點(diǎn)經(jīng)緯度,即可到得插入點(diǎn)坐標(biāo)(Li,Bi)。該方法適用于多個(gè)模型直線分布的情況,如直線道路兩旁的路燈或樹木等。

      式中,Δd為模型間的水平間距;i為模型插入點(diǎn)序號(hào)。

      3)文件導(dǎo)入:讀取文件中的坐標(biāo)數(shù)據(jù)添加模型。文件中每行代表一個(gè)插入點(diǎn),一行有兩個(gè)數(shù)值,前者是經(jīng)度或橫坐標(biāo),后者是緯度或縱坐標(biāo),以逗號(hào)或空格隔開。該方法適用于模型插入位置已知的情況。

      4)數(shù)據(jù)庫導(dǎo)入:從指定數(shù)據(jù)庫中讀取插入點(diǎn)的坐標(biāo)數(shù)據(jù)來添加模型。數(shù)據(jù)庫保存有各模型的位置信息,通過與數(shù)據(jù)庫的連接可獲取位置。適用于位置數(shù)據(jù)已保存在數(shù)據(jù)庫的情況。

      另外,可以根據(jù)實(shí)際需要對(duì)添加方式進(jìn)行擴(kuò)展,例如模型分布特征是其他有規(guī)律的幾何形狀,那么按照該規(guī)律對(duì)應(yīng)的數(shù)學(xué)公式來編寫代碼即可實(shí)現(xiàn)批量添加。

      4.坐標(biāo)轉(zhuǎn)換

      CreateModel函數(shù)的位置參數(shù)是經(jīng)緯度,即大地坐標(biāo)。使用“文件導(dǎo)入”或“數(shù)據(jù)庫導(dǎo)入”的方式添加景觀模型時(shí),若已知的插入點(diǎn)坐標(biāo)不是大地坐標(biāo),則需要進(jìn)行坐標(biāo)轉(zhuǎn)換,下面分兩種情況討論。

      1)插入點(diǎn)坐標(biāo)與地形模型使用相同的坐標(biāo)系,即橢球參數(shù)相同,只需進(jìn)行坐標(biāo)形式的轉(zhuǎn)換。若插入點(diǎn)是高斯平面坐標(biāo)(x,y),可使用高斯投影反算公式[5]將平面坐標(biāo)轉(zhuǎn)為大地坐標(biāo)。若插入點(diǎn)為空間直角坐標(biāo)(X,Y,Z),可用式(2)計(jì)算大地坐標(biāo)[6]。

      2)插入點(diǎn)坐標(biāo)與地形模型的坐標(biāo)系不同,則需進(jìn)行坐標(biāo)系轉(zhuǎn)換。坐標(biāo)系之間的轉(zhuǎn)換模型有布爾沙模型、莫洛金斯基模型、武測(cè)模型,另外還有一些學(xué)者對(duì)這些模型進(jìn)行改進(jìn),得到更好的轉(zhuǎn)換效果,這里不再贅述,具體方法可查閱文獻(xiàn)[7—9]。

      四、數(shù)據(jù)組織和管理

      為方便管理模型的屬性信息,采用數(shù)據(jù)庫來存儲(chǔ)和管理這些數(shù)據(jù)是很有必要的。根據(jù)數(shù)字城市景觀模型的類型和信息,可以將具有相同或相似屬性的景觀模型歸到同一類。例如創(chuàng)建一個(gè)城市景觀模型數(shù)據(jù)庫,其中的兩個(gè)數(shù)據(jù)表及字段如下。

      1)地下管線設(shè)施表:編號(hào)ID,名稱,上游點(diǎn)名,下游點(diǎn)名,主管部門代碼,主管部門名稱,所屬類型代碼,管徑,管厚,設(shè)計(jì)管壓,竣工日期,圖片,備注。

      2)沿路公共設(shè)施表:編號(hào)ID,名稱,坐標(biāo)X,坐標(biāo)Y,高程H,水平轉(zhuǎn)角,前后傾角,左右傾角,主管部門代碼,主管部門名稱,權(quán)屬部門代碼,權(quán)屬部門名稱,所屬路段代碼,所屬路段名稱,數(shù)據(jù)來源,設(shè)施型號(hào)代碼,設(shè)施狀態(tài),設(shè)施材料,設(shè)施顏色,圖片,備注。

      對(duì)于污水井、通信管線井、自來水井等屬性信息相似的模型,可以存放在地下管線設(shè)施表中,路燈、郵筒、垃圾桶、樹木等可歸類到沿路公共設(shè)施表。

      為了減少數(shù)據(jù)量,將圖片統(tǒng)一存放在指定文件夾里,數(shù)據(jù)表的圖片字段只記錄對(duì)應(yīng)圖片的存放路徑。這樣對(duì)于同一種設(shè)施,其圖片是相同的,共用一張圖片即可。

      模型添加到工程文件后,通過屬性編輯對(duì)話框完善信息,然后保存到數(shù)據(jù)庫中。若要查看某一路段所包含的公共設(shè)施,那么檢索路段代碼或路段名稱即可。數(shù)據(jù)庫的訪問采用DataGridView控件,它具有很好的配置性和擴(kuò)展性,而且能訪問多種數(shù)據(jù)庫,如 SQL Server和 Access。

      五、試驗(yàn)示例

      為驗(yàn)證該方法的可行性,以Visual Studio 2008作為開發(fā)平臺(tái),使用VB語言實(shí)現(xiàn)城市三維景觀模型的批量添加,并結(jié)合Access數(shù)據(jù)庫對(duì)模型屬性信息進(jìn)行存儲(chǔ)。

      在某一數(shù)字城市的地形場景模型(MPT文件)上添加路燈設(shè)施如圖2所示,以直線定距的方式添加路燈模型,通過設(shè)置方位角Yaw等調(diào)整偏向參數(shù)就可批量地控制模型的朝向。模型添加完畢后,通過在模型坐標(biāo)列表中雙擊鼠標(biāo)左鍵調(diào)出屬性編輯對(duì)話框(如圖3所示),即可輸入模型屬性信息并將數(shù)據(jù)入庫。

      圖2 路燈模型

      六、結(jié)束語

      TerraExplorer Pro三維GIS平臺(tái)的功能強(qiáng)大,其二次開發(fā)包TerraDeveloper具有使用方便、易于實(shí)現(xiàn)、開發(fā)效率高等優(yōu)點(diǎn)。本文基于TerraDeveloper實(shí)現(xiàn)了數(shù)字城市三維景觀模型的批量添加方法,不但提高了數(shù)字城市建模的工作效率,而且模型的位置精度也得以保證,降低了人為誤差。另外,使用數(shù)據(jù)庫對(duì)模型屬性數(shù)據(jù)進(jìn)行存儲(chǔ)和管理更加安全和合理。批量添加的關(guān)鍵是計(jì)算每個(gè)模型的插入位置,因此可根據(jù)實(shí)際情況,對(duì)于具有一定規(guī)律分布的模型,建立相應(yīng)的計(jì)算模型插入點(diǎn)位置的方法,例如某個(gè)小區(qū)的房屋模型是一樣的,模型間距相同,那么按照矩形的方式求解插入點(diǎn)坐標(biāo),即可實(shí)現(xiàn)批量添加。

      圖3 屬性編輯

      [1]施加松,劉建忠.3D GIS技術(shù)研究發(fā)展綜述[J].測(cè)繪科學(xué),2005,30(5):117-119.

      [2]唐楨,張新長,曹凱濱.基于Skyline的三維技術(shù)在城市規(guī)劃中的應(yīng)用研究[J].測(cè)繪通報(bào),2010(5):10-12.

      [3]姚申君.基于 TerraDeveloper的三維 GIS開發(fā)研究[D].上海:華東師范大學(xué),2008.

      [4]梁吉欣,左小清.Skyline在Web三維GIS中的應(yīng)用研究[J].昆明理工大學(xué)學(xué)報(bào):理工版,2009,34(2):1-4.

      [5]施一民.現(xiàn)代大地控制測(cè)量[M].北京:測(cè)繪出版社,2003:113-114.

      [6]王解先,王軍,陸彩萍.WGS-84與北京54坐標(biāo)的轉(zhuǎn)換問題[J].大地測(cè)量與地球動(dòng)力學(xué),2003,23(3):70-73.

      [7]劉大杰,施一民,過靜珺.全球定位系統(tǒng)的原理和數(shù)據(jù)處理[M].上海:同濟(jì)大學(xué)出版社,2006:183-187.

      [8]陳宇,白征東,羅騰.基于改進(jìn)的布爾沙模型的坐標(biāo)轉(zhuǎn)換方法[J].大地測(cè)量與地球動(dòng)力學(xué),2010,30(3):71-73.

      [9]陳義,沈云中.非線性三維基準(zhǔn)轉(zhuǎn)換的穩(wěn)健估計(jì)[J].大地測(cè)量與地球動(dòng)力學(xué),2003,23(4):49-53.

      猜你喜歡
      批量建模景觀
      景觀別墅
      批量提交在配置分發(fā)中的應(yīng)用
      火山塑造景觀
      聯(lián)想等效,拓展建模——以“帶電小球在等效場中做圓周運(yùn)動(dòng)”為例
      包羅萬象的室內(nèi)景觀
      基于PSS/E的風(fēng)電場建模與動(dòng)態(tài)分析
      電子制作(2018年17期)2018-09-28 01:56:44
      不對(duì)稱半橋變換器的建模與仿真
      淺議高校網(wǎng)銀批量代發(fā)
      春天景觀
      中國攝影家(2014年6期)2014-04-29 14:54:47
      基于AUTOIT3和VBA的POWERPOINT操作題自動(dòng)批量批改
      长兴县| 河源市| 清原| 吉隆县| 介休市| 衡阳市| 贵定县| 武清区| 富源县| 金乡县| 利津县| 体育| 浪卡子县| 古田县| 阆中市| 巩义市| 许昌市| 封丘县| 康乐县| 砀山县| 浑源县| 田阳县| 昭苏县| 巴楚县| 灵武市| 阿坝县| 广河县| 平陆县| 开鲁县| 陕西省| 蒙山县| 伽师县| 浮山县| 鹤庆县| 萨嘎县| 清水河县| 内乡县| 华坪县| 和静县| 阳西县| 白城市|