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

基于ARCGISENGINE的校園三維虛擬沙盤設計

2012-10-17 07:26:34寇崇暉
赤峰學院學報·自然科學版 2012年5期
關鍵詞:校園

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

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

基于ARCGISENGINE的校園三維虛擬沙盤設計

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

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

GIS作為一門綜合性技術,不斷與其他技術相結合,特別是計算機技術的發展密切相關.ArcGIS Engine帶來開發平臺的靈活性,能夠使GIS功能嵌入非GIS軟件或將其他軟件功能引入GIS軟件平臺.本文結合閩江學院校園三維虛擬沙盤來闡述利用ArcGIS Engine進行地理信息系統二次開發的原理和方法.

ArcGIS Engine;三維;虛擬沙盤

1 前言

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

本文基于COM技術的ArcGIS Engine進行地理信息系統的開發,并結合校園三維虛擬沙盤來說明其開發的原理和方法.

2 ArcGIS Engine和COM

2.1 ArcGIS Engine

ArcGIS Engine是一個基于ArcObjects構建的可編程的嵌入式GIS工具包.ArcGIS Engine是由一組核心的ArcObjects包組,與平臺無關.它是一種新的部署策略和資源.開發人員能利用ArcGIS Engine開發出功能強大的GIS應用系統.ArcGIS Engine開發包包括三個關鍵部分[8]:

2.1.1 控件

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

2.1.2 工具條和工具

工具條是GIS工具的集合,在應用程序中用它來和地圖和地理信息交互.

2.1.3 對象庫

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

2.2 COM 原理

COM(Component Object Model,組件對象模型)是一種以組件為發布單元的對象模型,COM是OLE和ActiveX共同的基礎,COM不是一種面向對象的語言,而是一種二進制標準[9-10].COM所建立的是一個軟件模塊與另一軟件模塊之間的鏈接,當這種鏈接建立之后,模塊之間就可以通過接口機制來進行通信.COM接口是一組邏輯上相互關聯的操作,這些操作定義了某種行為,即這組操作的規范,而非特定的實現,實質是接口代表了接口調用者和實現者之間的一種約定.COM標準增加了保障系統和組件完整的安全機制,從而擴展到分布式環境.

3 ArcGIS Engine開發實例

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

3.1 ArcGIS控件加載

(1)啟動 Microsoft Visual Studio 2005,并新建一個工程;

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

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

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

圖1 添加控件

3.2 ArcGIS控件嵌入

(1)在設計模式下打開Form1窗體;

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

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

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

(5)結合閩江學院三維虛擬沙盤校園的具體需要,設計最終窗體(見圖2).

圖2 校園地理信息系統窗體設計

3.3 設置工具條控件和目錄樹控件與地圖控件的鏈接

對于此應用程序,TOCControl和ToolbarControl控件將與PageLayoutControl相互協作,而不是MapControl,為此PageLayoutControl必須設置為綁定控件.TOCControl使用綁定的ActiveView顯示圖形、圖層和符號,而位于ToolbarControl上的任何命令、工具或菜單項會受綁定控件的顯示影響.

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

圖3 ToolbarControl屬性頁

圖4 TOCControl屬性頁

也可以用代碼的形式實現,代碼如下:

3.4 增加ToolbarControl命令

ArcGIS Engine提供了120多個命令和工具,它們能直接和 MapControl、PageLayoutControl和ToolbarControl相互協作.這些命令和工具提供了大量的GIS功能,包括地圖導航、屬性查詢、地物選擇等.在應用程序中增加一些對本次開發有用的命令和工具.

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

3.5 添加PageLayoutControl彈出式菜單

和綁定控件協作的ToolbarControl增加ArcGIS Engine命令一樣,按照前面的步驟,可以從ArcGIS Engine命令創建彈出式菜單.下面將在應用程序中增加與PageLayoutControl協作的彈出式菜單,當在PageLayoutControl可視區域點擊鼠標右鍵的時候,彈出式菜單將顯示.

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

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

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

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

圖5 三維顯示窗體

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

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

(4)運行結果如圖6:

4 結論

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

校園三維虛擬沙盤系統是對ArcGIS Engine二次開發進行的一次有意義的嘗試,開發利用ArcGIS Engine的各個模塊之間的聯合,開發出適合于三維虛擬沙盤校園的系統.基于ArcGIS Engine的開發與開發平臺無關,且各個組件之間能自由的組合開發出各種各具特色的系統.從運行的結果分析,此次開發基本達到了研究項目的目的,但由于研究系統的復雜性,在一些方面還不夠深入.通過以上的研究表明,利用ArcGIS Engine進行二次開發表明其具有開發的簡捷性、方便性、高效性等特點,且能適合不同的開發要求.

〔1〕丁院鋒,丁賢榮,趙吉祥.基于 ArcGIS Engine 實現河道工程對象3D建模[J].電腦開發與應用,2007(20)11:47-49.

〔2〕莊晨輝,陳銘潮,潘俊忠.林業資源管理地理信息系統的研制與開發[J].福建林學院學報,2005,25(1):1-4.

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

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

〔5〕朱慶,林琿.數碼城市地理信息系統——虛擬城市環境中的三維城市模型初探[M].武漢:武漢大學出版社,2004.

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

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

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

〔9〕吳柏青,魏仰蘇,蔣國明.基于COM原理的UML模型信息提取技術[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爆校園
再見,我的校園
南方周末(2018-06-28)2018-06-28 08:11:04
校園的早晨
琴童(2017年3期)2017-04-05 14:49:04
春滿校園
主站蜘蛛池模板: 日韩免费视频播播| 黄色网在线免费观看| 日本一区二区三区精品视频| yjizz视频最新网站在线| 亚洲精品成人福利在线电影| 99精品国产电影| 囯产av无码片毛片一级| 午夜视频免费一区二区在线看| 久久综合色视频| 国产精品冒白浆免费视频| 一本色道久久88亚洲综合| 99在线视频精品| 亚洲第一成人在线| 亚洲第一黄片大全| 91区国产福利在线观看午夜| 91精品国产一区| 亚洲中文字幕久久无码精品A| 国产嫖妓91东北老熟女久久一| 一级毛片免费播放视频| 中文字幕人妻无码系列第三区| 亚洲男人的天堂久久精品| 久久精品只有这里有| 久久精品无码一区二区日韩免费| 亚洲国产日韩一区| 国内精品久久久久久久久久影视| 久久精品66| vvvv98国产成人综合青青| 原味小视频在线www国产| 久久精品丝袜高跟鞋| 久久婷婷六月| 色噜噜中文网| 视频国产精品丝袜第一页| 夜夜爽免费视频| 伊人AV天堂| 成人91在线| 久久精品亚洲中文字幕乱码| www.91在线播放| 国产福利免费视频| 国内精品九九久久久精品| 精品视频在线观看你懂的一区| 91在线国内在线播放老师| a级毛片免费网站| 久久夜色精品国产嚕嚕亚洲av| 国产91熟女高潮一区二区| 扒开粉嫩的小缝隙喷白浆视频| 欧美中日韩在线| 韩日免费小视频| 亚洲码一区二区三区| 91毛片网| 亚洲第一成人在线| 永久免费精品视频| 国产在线一区二区视频| 日韩国产黄色网站| 欧美亚洲一区二区三区导航| 久久国产精品电影| 99精品伊人久久久大香线蕉| 538精品在线观看| 真实国产精品vr专区| 亚洲色成人www在线观看| 成人中文字幕在线| 高清视频一区| 91小视频版在线观看www| 情侣午夜国产在线一区无码| 熟妇人妻无乱码中文字幕真矢织江| 免费看的一级毛片| 国产精品亚洲αv天堂无码| 毛片网站在线播放| 亚洲天堂久久久| 国产在线观看高清不卡| 丁香婷婷激情网| 国产极品美女在线观看| 国产精品蜜臀| 一级爆乳无码av| 一本综合久久| www亚洲精品| 4虎影视国产在线观看精品| 亚洲嫩模喷白浆| 日韩第一页在线| 麻豆精品国产自产在线| 强乱中文字幕在线播放不卡| 亚洲欧美日韩视频一区| 中国国产一级毛片|