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

基于ARCGISENGINE的校園三維虛擬沙盤(pán)設(shè)計(jì)

2012-10-17 07:26:34寇崇暉
關(guān)鍵詞:校園

張 棫,李 燃,林 瀚,寇崇暉

(閩江學(xué)院 地理科學(xué)系,福建 福州 350108)

基于ARCGISENGINE的校園三維虛擬沙盤(pán)設(shè)計(jì)

張 棫,李 燃,林 瀚,寇崇暉

(閩江學(xué)院 地理科學(xué)系,福建 福州 350108)

GIS作為一門(mén)綜合性技術(shù),不斷與其他技術(shù)相結(jié)合,特別是計(jì)算機(jī)技術(shù)的發(fā)展密切相關(guān).ArcGIS Engine帶來(lái)開(kāi)發(fā)平臺(tái)的靈活性,能夠使GIS功能嵌入非GIS軟件或?qū)⑵渌浖δ芤隚IS軟件平臺(tái).本文結(jié)合閩江學(xué)院校園三維虛擬沙盤(pán)來(lái)闡述利用ArcGIS Engine進(jìn)行地理信息系統(tǒng)二次開(kāi)發(fā)的原理和方法.

ArcGIS Engine;三維;虛擬沙盤(pán)

1 前言

經(jīng)歷30多年的發(fā)展,GIS正在形成完整的技術(shù)系統(tǒng)并在建立其他理論體系,形成了多層次和不同尺度的應(yīng)用格局,成為信息產(chǎn)業(yè)的重要組成部分[1-2].GIS技術(shù)的應(yīng)用越來(lái)越廣泛,已廣泛應(yīng)用到國(guó)土、農(nóng)業(yè)、海洋、汽車(chē)導(dǎo)航、防災(zāi)、等各行業(yè)中[3-5].各種應(yīng)用型GIS系統(tǒng)也層出不窮,但傳統(tǒng)GIS的開(kāi)發(fā)存在很多弊端.傳統(tǒng)GIS開(kāi)發(fā)方式主要采用GIS平臺(tái)提供的宏命令語(yǔ)言,如ArcInfo的AML,加上龐大的函數(shù)、命令庫(kù),使得普通的開(kāi)發(fā)技術(shù)人員難以掌握,延長(zhǎng)了應(yīng)用產(chǎn)品的開(kāi)發(fā)周期.在數(shù)據(jù)管理方面,傳統(tǒng)GIS系統(tǒng)中的空間數(shù)據(jù)管理也存在不足[6].此外,傳統(tǒng)GIS系統(tǒng)與MIS系統(tǒng),多媒體開(kāi)發(fā)工具的兼容性都相對(duì)較差.傳統(tǒng)GIS開(kāi)發(fā)模式不靈活的開(kāi)發(fā)方式及昂貴的價(jià)格,在相當(dāng)大的程度上限制了GIS應(yīng)用領(lǐng)域的發(fā)展.采用組件技術(shù)把GIS的功能適當(dāng)抽象,以組件的形式供開(kāi)發(fā)者使用,帶來(lái)許多傳統(tǒng)GIS工具無(wú)法比擬的優(yōu)點(diǎn):小巧靈活,價(jià)格便宜,直接嵌入MIS開(kāi)發(fā)工具,強(qiáng)大的GIS功能,開(kāi)發(fā)簡(jiǎn)捷等.其典型代表是ESRI公司推出的產(chǎn)品——ArcGISEngine,使得GIS應(yīng)用開(kāi)發(fā)徹底地脫離了ArcGIS桌面平臺(tái),大大提高了GIS開(kāi)發(fā)的效率,極大地促進(jìn)了GIS的應(yīng)用開(kāi)發(fā)[7].用戶只需用ArcGIS Engine一個(gè)軟件包就可以開(kāi)發(fā)實(shí)用的有針對(duì)性的GIS,不僅方便了開(kāi)發(fā),還大大節(jié)約了開(kāi)發(fā)費(fèi)用.ArcGIS Engine的是地理信息系統(tǒng)的二次開(kāi)發(fā)的一個(gè)里程碑.

本文基于COM技術(shù)的ArcGIS Engine進(jìn)行地理信息系統(tǒng)的開(kāi)發(fā),并結(jié)合校園三維虛擬沙盤(pán)來(lái)說(shuō)明其開(kāi)發(fā)的原理和方法.

2 ArcGIS Engine和COM

2.1 ArcGIS Engine

ArcGIS Engine是一個(gè)基于ArcObjects構(gòu)建的可編程的嵌入式GIS工具包.ArcGIS Engine是由一組核心的ArcObjects包組,與平臺(tái)無(wú)關(guān).它是一種新的部署策略和資源.開(kāi)發(fā)人員能利用ArcGIS Engine開(kāi)發(fā)出功能強(qiáng)大的GIS應(yīng)用系統(tǒng).ArcGIS Engine開(kāi)發(fā)包包括三個(gè)關(guān)鍵部分[8]:

2.1.1 控件

控件是ArcGIS用戶界面的組成部分,你可以嵌入并在你的應(yīng)用程序中使用.

2.1.2 工具條和工具

工具條是GIS工具的集合,在應(yīng)用程序中用它來(lái)和地圖和地理信息交互.

2.1.3 對(duì)象庫(kù)

對(duì)象庫(kù)是可編程ArcObjects組件的集合,包括幾何圖形到制圖、GIS數(shù)據(jù)源和geodatabase等一系列庫(kù).

2.2 COM 原理

COM(Component Object Model,組件對(duì)象模型)是一種以組件為發(fā)布單元的對(duì)象模型,COM是OLE和ActiveX共同的基礎(chǔ),COM不是一種面向?qū)ο蟮恼Z(yǔ)言,而是一種二進(jìn)制標(biāo)準(zhǔn)[9-10].COM所建立的是一個(gè)軟件模塊與另一軟件模塊之間的鏈接,當(dāng)這種鏈接建立之后,模塊之間就可以通過(guò)接口機(jī)制來(lái)進(jìn)行通信.COM接口是一組邏輯上相互關(guān)聯(lián)的操作,這些操作定義了某種行為,即這組操作的規(guī)范,而非特定的實(shí)現(xiàn),實(shí)質(zhì)是接口代表了接口調(diào)用者和實(shí)現(xiàn)者之間的一種約定.COM標(biāo)準(zhǔn)增加了保障系統(tǒng)和組件完整的安全機(jī)制,從而擴(kuò)展到分布式環(huán)境.

3 ArcGIS Engine開(kāi)發(fā)實(shí)例

ArcGIS Engine可 以 在 Windows、UNIX 和Linux桌面上運(yùn)行并支持一系列的應(yīng)用軟件開(kāi)發(fā)環(huán)境,包括:Visual Basic 6,Microsoft Visual Studio.NET和Java開(kāi)發(fā)環(huán)境.因此ArcGIS Engine允許開(kāi)發(fā)者在自己熟悉的環(huán)境下進(jìn)行開(kāi)發(fā).ArcGIS Engine通常是通過(guò)添加控件、工具、菜單條和對(duì)象庫(kù),在應(yīng)用中嵌入GIS功能.以下結(jié)合校園三維虛擬沙盤(pán)詳細(xì)介紹其具體開(kāi)發(fā)方式.

3.1 ArcGIS控件加載

(1)啟動(dòng) Microsoft Visual Studio 2005,并新建一個(gè)工程;

(2)工程命名為“三維虛擬沙盤(pán)校園”并保存該工程;

(3)右擊工程,選擇“添加引用(R)…”(見(jiàn)圖 1);

(4)在添加引用對(duì)話框中選擇所需要添加的庫(kù).

圖1 添加控件

3.2 ArcGIS控件嵌入

(1)在設(shè)計(jì)模式下打開(kāi)Form1窗體;

(2)在窗體中添加相應(yīng)的控件;

(3) 再 將 PageLayoutControl、TOCControl 和ToolbarControl添加到窗體中;

(4)重新調(diào)整窗體上各控件的大小和位置;

(5)結(jié)合閩江學(xué)院三維虛擬沙盤(pán)校園的具體需要,設(shè)計(jì)最終窗體(見(jiàn)圖2).

圖2 校園地理信息系統(tǒng)窗體設(shè)計(jì)

3.3 設(shè)置工具條控件和目錄樹(shù)控件與地圖控件的鏈接

對(duì)于此應(yīng)用程序,TOCControl和ToolbarControl控件將與PageLayoutControl相互協(xié)作,而不是MapControl,為此PageLayoutControl必須設(shè)置為綁定控件.TOCControl使用綁定的ActiveView顯示圖形、圖層和符號(hào),而位于ToolbarControl上的任何命令、工具或菜單項(xiàng)會(huì)受綁定控件的顯示影響.

可以用設(shè)置“屬性”的辦法設(shè)置綁定控件,如圖3和圖4:

圖3 ToolbarControl屬性頁(yè)

圖4 TOCControl屬性頁(yè)

也可以用代碼的形式實(shí)現(xiàn),代碼如下:

3.4 增加ToolbarControl命令

ArcGIS Engine提供了120多個(gè)命令和工具,它們能直接和 MapControl、PageLayoutControl和ToolbarControl相互協(xié)作.這些命令和工具提供了大量的GIS功能,包括地圖導(dǎo)航、屬性查詢、地物選擇等.在應(yīng)用程序中增加一些對(duì)本次開(kāi)發(fā)有用的命令和工具.

在Form_Load事件中的加載文檔代碼之前添加如下代碼:

3.5 添加PageLayoutControl彈出式菜單

和綁定控件協(xié)作的ToolbarControl增加ArcGIS Engine命令一樣,按照前面的步驟,可以從ArcGIS Engine命令創(chuàng)建彈出式菜單.下面將在應(yīng)用程序中增加與PageLayoutControl協(xié)作的彈出式菜單,當(dāng)在PageLayoutControl可視區(qū)域點(diǎn)擊鼠標(biāo)右鍵的時(shí)候,彈出式菜單將顯示.

在Form_Load事件中向ToolbarControl增加命令代碼的后面加載文檔代碼的前面增加如下代碼:

3.6 在MapControl控件中選擇元素并在SceneControl中三維顯示

MapControl控件中的顯示的就是二維數(shù)據(jù),可在其中選擇元素并利用圖層加載的辦法,加載入SceneControl控件中.在SceneControl控件中便可進(jìn)行三維的顯示.

(1)添加一個(gè)新的窗體Form2,并在其中部署ToolBarControl控件和SceneControl控件,如圖5:

圖5 三維顯示窗體

(2)在Form1中添加axMapControl1_OnMouse-Down事件并添加下列代碼:

(3)最后在Form2的Load事件中添加下列代碼:

(4)運(yùn)行結(jié)果如圖6:

4 結(jié)論

圖6 三維顯示結(jié)果(校園部分角落——食堂)

校園三維虛擬沙盤(pán)系統(tǒng)是對(duì)ArcGIS Engine二次開(kāi)發(fā)進(jìn)行的一次有意義的嘗試,開(kāi)發(fā)利用ArcGIS Engine的各個(gè)模塊之間的聯(lián)合,開(kāi)發(fā)出適合于三維虛擬沙盤(pán)校園的系統(tǒng).基于ArcGIS Engine的開(kāi)發(fā)與開(kāi)發(fā)平臺(tái)無(wú)關(guān),且各個(gè)組件之間能自由的組合開(kāi)發(fā)出各種各具特色的系統(tǒng).從運(yùn)行的結(jié)果分析,此次開(kāi)發(fā)基本達(dá)到了研究項(xiàng)目的目的,但由于研究系統(tǒng)的復(fù)雜性,在一些方面還不夠深入.通過(guò)以上的研究表明,利用ArcGIS Engine進(jìn)行二次開(kāi)發(fā)表明其具有開(kāi)發(fā)的簡(jiǎn)捷性、方便性、高效性等特點(diǎn),且能適合不同的開(kāi)發(fā)要求.

〔1〕丁院鋒,丁賢榮,趙吉祥.基于 ArcGIS Engine 實(shí)現(xiàn)河道工程對(duì)象3D建模[J].電腦開(kāi)發(fā)與應(yīng)用,2007(20)11:47-49.

〔2〕莊晨輝,陳銘潮,潘俊忠.林業(yè)資源管理地理信息系統(tǒng)的研制與開(kāi)發(fā)[J].福建林學(xué)院學(xué)報(bào),2005,25(1):1-4.

〔3〕張健.歐美大學(xué)校園規(guī)劃例程初探[D].重慶:重慶大學(xué),2004.

〔4〕鄒杰,鄒崢嶸,丁孝兵.基于 IMAGIS的城市三維景觀的構(gòu)建[J].城市勘測(cè),2005(6):16-18.

〔5〕朱慶,林琿.數(shù)碼城市地理信息系統(tǒng)——虛擬城市環(huán)境中的三維城市模型初探[M].武漢:武漢大學(xué)出版社,2004.

〔6〕劉曉艷,林琿,張宏.虛擬城市建設(shè)原理與方法[M].北京:科學(xué)出版社,2003.

〔7〕ArcGIS Engine Developer Guide[R].ESRI Corp,2007.

〔8〕沈百玲.ArcGIS Engine簡(jiǎn)介[J].中國(guó)通訊,ESRI中國(guó)(北京)有限公司,2003(10):3-5.

〔9〕吳柏青,魏仰蘇,蔣國(guó)明.基于COM原理的UML模型信息提取技術(shù)[J].計(jì)算機(jī)工程與設(shè)計(jì),2007,28(17):4099-4101.

〔10〕ESRI.Desktop Developers Guides.Environmental Systems Research Institute,Inc,2002.

P208

A

1673-260X(2012)03-0114-04

猜你喜歡
校園
Q爆校園
Q爆校園
Q爆校園
Q爆校園
Q爆校園
Q爆校園
Q爆校園
再見(jiàn),我的校園
南方周末(2018-06-28)2018-06-28 08:11:04
校園的早晨
琴童(2017年3期)2017-04-05 14:49:04
春滿校園
主站蜘蛛池模板: 亚洲成a人在线观看| 日本黄色a视频| 91在线精品麻豆欧美在线| 中文字幕资源站| 麻豆精品久久久久久久99蜜桃| 91视频精品| 久久这里只有精品国产99| 2020国产精品视频| a天堂视频| 成人国内精品久久久久影院| 国产交换配偶在线视频| 久久精品人人做人人爽| 伊人色天堂| 国产精品一区二区在线播放| 欧美在线一二区| 亚洲一级毛片免费看| 中文字幕在线视频免费| 免费人成网站在线高清| 免费播放毛片| 亚洲欧洲一区二区三区| 日韩无码真实干出血视频| 久久国产精品电影| 永久免费无码日韩视频| 91麻豆精品国产91久久久久| 大学生久久香蕉国产线观看| 婷婷午夜天| 亚洲成人77777| 91精品亚洲| 久久99蜜桃精品久久久久小说| 亚洲色图另类| 国产性猛交XXXX免费看| 国产毛片基地| 成人福利免费在线观看| 中文字幕在线观| 亚洲欧洲自拍拍偷午夜色| 色哟哟色院91精品网站| 欧美精品综合视频一区二区| 亚洲国语自产一区第二页| 亚洲欧美成人| 日韩美一区二区| 国产va免费精品观看| 亚洲精品777| 久久毛片网| 国产人人乐人人爱| 久久一本精品久久久ー99| 日韩精品一区二区三区大桥未久| 欧美成人a∨视频免费观看| 亚洲欧美自拍中文| www.99精品视频在线播放| 久久性妇女精品免费| 欧美在线视频a| 国产成a人片在线播放| 亚洲a级毛片| 老司机久久99久久精品播放 | 中文国产成人精品久久| 精品国产成人高清在线| 九色在线视频导航91| 国产哺乳奶水91在线播放| 欧洲欧美人成免费全部视频| 制服丝袜国产精品| 久久人体视频| 亚洲精品国产精品乱码不卞| 狠狠做深爱婷婷久久一区| 国产手机在线小视频免费观看| 免费国产黄线在线观看| 久久久久青草大香线综合精品 | 青青网在线国产| av无码一区二区三区在线| 激情综合激情| 国产麻豆另类AV| www.av男人.com| 71pao成人国产永久免费视频 | 日日噜噜夜夜狠狠视频| 2020亚洲精品无码| 中文字幕乱码二三区免费| 国产精品真实对白精彩久久| 色吊丝av中文字幕| 一级成人a毛片免费播放| 欧美劲爆第一页| 午夜丁香婷婷| 高清免费毛片| 国产浮力第一页永久地址|