《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 通信與網(wǎng)絡(luò) > 業(yè)界動(dòng)態(tài) > 基于MapX的GIS動(dòng)態(tài)操作與實(shí)現(xiàn)

基于MapX的GIS動(dòng)態(tài)操作與實(shí)現(xiàn)

2008-09-12
作者:劉書(shū)雷 李 軍 陳宏盛

  摘? 要: 分析了GIS和MapX的基本技術(shù),提出了GIS信息顯示系統(tǒng)" title="顯示系統(tǒng)">顯示系統(tǒng)中地圖對(duì)象動(dòng)態(tài)添加、刪除以及地圖整體顯示效果適時(shí)變化的實(shí)現(xiàn)方法。結(jié)合基于MapX的電力網(wǎng)絡(luò)配置" title="網(wǎng)絡(luò)配置">網(wǎng)絡(luò)配置顯示系統(tǒng)來(lái)說(shuō)明這些技術(shù)。

  關(guān)鍵詞: GIS? MapX? 動(dòng)態(tài)操作? 添加? 刪除

?

  地理信息系統(tǒng)GIS(Geographic Information System)是收集、管理、查詢(xún)、分析、操作以及表現(xiàn)與地理相關(guān)的數(shù)據(jù)信息的計(jì)算機(jī)信息系統(tǒng),能夠?yàn)榉治?、決策提供重要的支持平臺(tái)。近年來(lái),GIS廣泛應(yīng)用于基礎(chǔ)設(shè)施(道路、電力等)的規(guī)劃、自然資源的開(kāi)發(fā)和利用、城市的發(fā)展規(guī)劃、人口遷移與安置以及交通工具的定位導(dǎo)航和定位等復(fù)雜的區(qū)域開(kāi)發(fā),并取得了良好的效益。

  隨著GIS的迅猛發(fā)展,GIS越來(lái)越多地應(yīng)用于信息顯示系統(tǒng)" title="信息顯示系統(tǒng)">信息顯示系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn),在信息顯示系統(tǒng)中動(dòng)態(tài)信息交互顯示是一個(gè)重要內(nèi)容。例如在區(qū)域電力網(wǎng)絡(luò)的管理方面,一個(gè)單獨(dú)的變電站可以滿足一定區(qū)域的供電需求。某個(gè)地區(qū)是否需要增加一個(gè)變電站以滿足該區(qū)域電力供應(yīng)的需求,增加這個(gè)變電站后整個(gè)電力網(wǎng)絡(luò)的覆蓋范圍" title="覆蓋范圍">覆蓋范圍達(dá)到什么水平,都可以通過(guò)動(dòng)態(tài)GIS模擬實(shí)現(xiàn),達(dá)到輔助決策的效果。

  本文以區(qū)域電力設(shè)施配置顯示系統(tǒng)的設(shè)計(jì)為背景,說(shuō)明如何實(shí)現(xiàn)電力設(shè)施的添加、刪除以及操作完成后適時(shí)顯示系統(tǒng)的整體態(tài)勢(shì)信息。

1 MapX簡(jiǎn)介

  MapX是MapInfo公司向用戶(hù)提供的具有強(qiáng)大地圖分析功能的32位OCX控件。編程人員在開(kāi)發(fā)過(guò)程中可以選用自己最熟悉的可視化開(kāi)發(fā)環(huán)境,輕松地將地圖功能嵌入到應(yīng)用中,并且可以脫離MapInfo的軟件平臺(tái)運(yùn)行。同時(shí),MapX采用基于MapInfo Professional的相同地圖化技術(shù),可以實(shí)現(xiàn)MapInfo Professional具有的絕大部分地圖編輯和空間分析功能;MapX提供了各種工具、屬性和方法,非常容易實(shí)現(xiàn)這些功能,因此近年來(lái)得到了迅猛發(fā)展。

1.1 MapX的空間數(shù)據(jù)結(jié)構(gòu)

  空間數(shù)據(jù)結(jié)構(gòu)是GIS的基石。GIS通過(guò)這種地理空間拓?fù)浣Y(jié)構(gòu)建立地理圖形的空間數(shù)據(jù)模型并定義各空間數(shù)據(jù)之間的關(guān)系,從而實(shí)現(xiàn)地理圖形和數(shù)據(jù)庫(kù)的結(jié)合。如圖1所示,地理信息系統(tǒng)采用分層管理的方法管理地圖數(shù)據(jù),同一類(lèi)型的空間對(duì)象存放在相同圖層中。

?

1.2 MapX對(duì)象模型

  MapX控件采用面向?qū)ο蟮姆绞教幚淼乩硇畔⑾到y(tǒng),對(duì)地理數(shù)據(jù)的操作實(shí)際上是對(duì)各類(lèi)對(duì)象的操作。MapX的基本組成單元是Object(單個(gè)對(duì)象)和Collection(集合)。其中集合包括對(duì)象,是多個(gè)對(duì)象的組合,每種對(duì)象與集合負(fù)責(zé)處理地圖某一方面的功能。MapX主要包括以下對(duì)象:

  (1) Map

  Map是MapX的頂層屬性,每個(gè)Map對(duì)象主要包括Datasets、Layers、Annotations三個(gè)對(duì)象集合。

  Map對(duì)象包括一些主要的屬性,如Zoom用來(lái)設(shè)置放大級(jí)別(在地圖上顯示的大小),Rotation控制地圖的旋轉(zhuǎn)角度,CenterX和CenterY用于設(shè)置地圖顯示窗口的中心坐標(biāo)。

  (2) Layers

  在MapX中,地理信息按照?qǐng)D層的集合(Layers Collection)表示,每張單獨(dú)的地圖都被表示成單獨(dú)的圖層,所有的圖層存儲(chǔ)在Layers集合中。Layer對(duì)象由Features對(duì)象組成,Features對(duì)象又是由Feature對(duì)象組成,Feature對(duì)應(yīng)于地圖中的點(diǎn)、線、面以及符號(hào)等地圖實(shí)體。

  (3) GeoSet

  GeoSet是在GeoManager中建立的。GST文件,類(lèi)似MapInfo中的WorkSpace概念,是圖層及其設(shè)置的集合,用于控制程序中顯示的地圖。

  (4) Datasets

  在MapX中,屬性數(shù)據(jù)的操作主要通過(guò)數(shù)據(jù)綁定" title="綁定">綁定實(shí)現(xiàn),Datasets用于實(shí)現(xiàn)地圖與數(shù)據(jù)的綁定。數(shù)據(jù)綁定的數(shù)據(jù)源可以是DAO、ADO、ODBC數(shù)據(jù)源、RDO、MapInfo Table文件,還可以是一個(gè)規(guī)定了格式的文本文件。要綁定一個(gè)數(shù)據(jù)源,首先要指定所綁定的圖層,然后需要指定與圖層中地圖對(duì)象相匹配的關(guān)鍵字段。

  (5) Annotations

Annotations集合提供了操縱地圖中文字和符號(hào)的簡(jiǎn)單方法。Annotations位于所有其它圖層的上方并且不與任何數(shù)據(jù)連接。

2 對(duì)象動(dòng)態(tài)添加

  在區(qū)域電力網(wǎng)絡(luò)配置顯示系統(tǒng)中,一個(gè)單獨(dú)的變電站可以滿足一定區(qū)域的供電需求。某個(gè)地區(qū)是否需要增加一個(gè)變電站,以滿足該區(qū)域供電需求,增加了這個(gè)變電站后整個(gè)電力網(wǎng)絡(luò)的覆蓋范圍達(dá)到什么水平。所以在系統(tǒng)中添加了某一型號(hào)的變電站后,要求該變電站的作用范圍與整個(gè)區(qū)域現(xiàn)存的電力覆蓋范圍結(jié)合起來(lái),形成并動(dòng)態(tài)顯示整個(gè)區(qū)域的電力網(wǎng)絡(luò)覆蓋范圍,以此判定該變電站建設(shè)的必要性以及該區(qū)域的電力網(wǎng)絡(luò)覆蓋范圍是否能夠滿足供電需求。

  變電站的建設(shè)表現(xiàn)在GIS顯示系統(tǒng)中就是在地圖上增加一個(gè)具有某些屬性的地圖對(duì)象。系統(tǒng)首先把各型號(hào)變電站性能參數(shù)存入數(shù)據(jù)庫(kù)中,用戶(hù)在系統(tǒng)界面上可以選擇需要修建的變電站型號(hào),系統(tǒng)連接數(shù)據(jù)庫(kù),讀取相應(yīng)的屬性信息,然后采用鼠標(biāo)單擊的形式把所選對(duì)象安裝在鼠標(biāo)單擊的位置,并利用MapX計(jì)算顯示區(qū)域電力覆蓋范圍。

  該功能的實(shí)現(xiàn)采用重畫(huà)的方式。即系統(tǒng)首先刪除地圖上現(xiàn)存變電站的整體作用范圍,然后讀取數(shù)據(jù)庫(kù)中需要添加對(duì)象的基本屬性和地圖上現(xiàn)存變電站的屬性數(shù)據(jù),以這些數(shù)據(jù)為依據(jù)把地圖上現(xiàn)存的以及需要安裝的變電站的作用范圍進(jìn)行重畫(huà),將各個(gè)對(duì)象的作用范圍進(jìn)行合并;合并后的整體作用范圍添加到對(duì)應(yīng)圖層并在對(duì)應(yīng)位置添加標(biāo)示即可。最后在圖上顯示的就是區(qū)域電力網(wǎng)絡(luò)的整體覆蓋范圍。

  系統(tǒng)采用臨時(shí)圖層lyrobj存放安裝對(duì)象(變電站)以及對(duì)象的整體作用范圍,用Num存放臨時(shí)圖層上電站的數(shù)目(即區(qū)域現(xiàn)存變電站的數(shù)目,obj(i)表示第i個(gè)對(duì)象),對(duì)象pt(i)存放第i個(gè)電站的名稱(chēng)、作用距離、地理坐標(biāo)等屬性信息。實(shí)現(xiàn)地圖對(duì)象添加的算法示意圖如圖2所示。

?

3 對(duì)象動(dòng)態(tài)刪除

  一個(gè)單獨(dú)的變電站可以滿足一定區(qū)域的供電需求,對(duì)于實(shí)際的某些電站,如果遭遇自然災(zāi)害或者根據(jù)需要予以拆除,那么表現(xiàn)在地圖上就是該地圖對(duì)象(電站)會(huì)被刪除,刪除了該電站后,整個(gè)地區(qū)的電網(wǎng)覆蓋范圍將隨之發(fā)生變化。電力管理部門(mén)可以此確定在發(fā)生意外的情況下,整個(gè)電力網(wǎng)絡(luò)是否仍可以滿足供電需求。

  整個(gè)實(shí)現(xiàn)過(guò)程采用臨時(shí)圖層lyrobj存放安裝對(duì)象(變電站)以及對(duì)象的整體作用范圍,用Num存放臨時(shí)圖層上電站的數(shù)目(obj(i)表示第i個(gè)對(duì)象),對(duì)象pt(i)存放第i個(gè)電站的名稱(chēng)、作用距離、地理坐標(biāo)等屬性信息。

  該功能的實(shí)現(xiàn):首先判斷選中的需要?jiǎng)h除的地圖對(duì)象(變電站)obj(k),并刪除數(shù)組pt()和obj()中對(duì)應(yīng)需要?jiǎng)h除的項(xiàng);然后刪除需要拆除的電站的標(biāo)示以及本地區(qū)所有電站的覆蓋范圍;隨后讀取數(shù)組pt()中對(duì)應(yīng)電站的屬性值,重畫(huà)除需要?jiǎng)h除的對(duì)象以外所有電站的覆蓋范圍,把各個(gè)對(duì)象的作用范圍進(jìn)行合并,并把合并后的整體作用范圍添加到對(duì)應(yīng)圖層,在對(duì)應(yīng)位置添加標(biāo)示。這樣就會(huì)得到拆除一個(gè)電站后本地區(qū)電力供應(yīng)的覆蓋范圍。實(shí)現(xiàn)地圖對(duì)象刪除的算法示意圖如圖3所示。

?

?

  在實(shí)際的GIS信息顯示系統(tǒng)中,對(duì)象的動(dòng)態(tài)操作是一個(gè)重要方面。利用本文介紹的這種方法開(kāi)發(fā)的電力網(wǎng)絡(luò)配置顯示系統(tǒng)效率高、實(shí)時(shí)性強(qiáng),為區(qū)域電力網(wǎng)絡(luò)的高效配置提供了方便快捷的保障。本系統(tǒng)雖然基于MapX實(shí)現(xiàn),但其實(shí)現(xiàn)地圖對(duì)象動(dòng)態(tài)交互操作的思路對(duì)WebGIS以及其他領(lǐng)域中地圖對(duì)象的動(dòng)態(tài)操作也有很強(qiáng)的借鑒意義。

?

參考文獻(xiàn)

1 齊超,何新華.車(chē)輛監(jiān)控地理信息系統(tǒng)中的地圖控制與實(shí)現(xiàn).計(jì)算機(jī)自動(dòng)測(cè)量與控制,2001;9(1)

2 牛德力. 組件式軟件及其在GIS開(kāi)發(fā)中的應(yīng)用.測(cè)繪學(xué)院學(xué)報(bào), 2000;17(04)

3 李玉國(guó),戴國(guó)忠.基于GIS組件MapX的機(jī)載輔助導(dǎo)航系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)報(bào),2001;13(05)

4 MapInfo Corporation? Mapinfo MapX Developer's Guide?Version 4.5. 2000

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。