摘要 地圖在人們的生產(chǎn)生活中的應(yīng)用越來(lái)越廣泛,在信息發(fā)達(dá)的今天,如何把行業(yè)信息和地域信息結(jié)合起來(lái)變得越來(lái)越重要。本文提供了一種開(kāi)發(fā)簡(jiǎn)單、價(jià)格低廉且方法可行的小區(qū)域地圖,可滿足一般客戶的基本需求。
關(guān)鍵詞 MapObjects VB 地圖應(yīng)用
中圖分類(lèi)號(hào):TP317.4 文獻(xiàn)標(biāo)識(shí)碼:A
0 前言
在信息技術(shù)日益普及的環(huán)境下,地圖廣泛服務(wù)于城市公眾,成為數(shù)字城市的基礎(chǔ)部分。隨著計(jì)算機(jī)技術(shù)的進(jìn)步,地圖應(yīng)用也越來(lái)越廣泛。從政府部門(mén)到一般企業(yè),再到單獨(dú)的個(gè)人,都離不開(kāi)地圖?,F(xiàn)在網(wǎng)絡(luò)上有很多地圖,但地圖應(yīng)用范圍單一,大部分面向大眾,針對(duì)某一行業(yè)或特定作用的地圖不是很多。也有一些專(zhuān)業(yè)功能的地圖,但大都價(jià)格昂貴。這些制約了地圖信息的更廣闊的發(fā)展。
VisualBasic是微軟公司推出的一種可視化的高級(jí)程序開(kāi)發(fā)語(yǔ)言,它支持面向?qū)ο蠹夹g(shù),特別需求者可以再VB平臺(tái)上開(kāi)發(fā)自己的需求;但大多缺少圖形信息。GIS主要是確定空間點(diǎn)的三維信息的一種技術(shù),在GIS領(lǐng)域中,有很多地圖開(kāi)發(fā)工具。本文選用VB作用開(kāi)發(fā)平臺(tái),調(diào)用MapObjects2.0作為開(kāi)發(fā)所用的ActiveX控件。
1 VB與MapObjects技術(shù)
1.1 Visual Basic
Visual Basic(VB)是微軟公司開(kāi)發(fā)的一種面向?qū)ο蟮拈_(kāi)發(fā)編程語(yǔ)言。VB因?yàn)樗暮?jiǎn)單、界面可視化、數(shù)據(jù)庫(kù)豐富而成為大多數(shù)軟件開(kāi)發(fā)者首選的開(kāi)發(fā)工具。BASIC 編程語(yǔ)言是VB的前身。VB擁有圖形用戶界面 ( GUI )和 快速應(yīng)用程序開(kāi)發(fā) ( RAD )系統(tǒng),能夠很容易地連接數(shù)據(jù)庫(kù)或創(chuàng)建ActiveX 控件。程序員快速、完整地使用VB提供的控件建立一個(gè)日常實(shí)用程序 。
1.2 MapObjects技術(shù)
MapObjects是一套制圖軟件集,過(guò)MapObjects開(kāi)發(fā)人員可以靈活地建立適合用戶的地圖接口。在小內(nèi)存空間中,程序員能用多種標(biāo)準(zhǔn)程序環(huán)境去開(kāi)發(fā)應(yīng)用程序,能聯(lián)合MapObjects與別的軟件實(shí)現(xiàn)地圖與用戶信息的聯(lián)系。它具有如下特點(diǎn):
(1)MapObjects功能強(qiáng)大,通過(guò)MapObjects可完成:顯示一張多圖層地圖(道路、河流、邊界)、地圖瀏覽、圖形元素生成(如點(diǎn),線,圓,多邊形)、說(shuō)明注記等等基本地圖操作功能。
(2)MapObjects是過(guò)程用戶。它是為程序設(shè)計(jì)者服務(wù)的。程序設(shè)計(jì)者可利用MapObjects設(shè)計(jì)應(yīng)用程序,并把這些應(yīng)用程序提供給終極需求者。
(3)MapObjects還有一個(gè)特性,地圖既可以是程序中的主要元素,也可是附屬品。所以,MapObjects非常適合vertical應(yīng)用軟件。比如, 你的軟件可能主要是商用數(shù)據(jù)庫(kù),當(dāng)查詢(xún)時(shí)可在表單上高亮度顯示與查詢(xún)內(nèi)容相關(guān)的地圖。
另外,MapObjects支持Shape文件、圖像文件、數(shù)據(jù)表或通過(guò)ESRI的專(zhuān)用數(shù)據(jù)庫(kù)引擎連接的專(zhuān)用數(shù)據(jù)表。在基于MapObjects編寫(xiě)的應(yīng)用程序中,通過(guò)ODBC(開(kāi)放數(shù)據(jù)庫(kù)連接)驅(qū)動(dòng)程序,可以訪問(wèn)外部的數(shù)據(jù)表,它們可以是多種格式的,如Access、SQL Server、Oracle 等。
2 利用MapObjects實(shí)現(xiàn)地圖開(kāi)發(fā)
MapObjects是一套制圖軟件集,過(guò)MapObjects開(kāi)發(fā)人員可以靈活地建立適合用戶的地圖接口。在小內(nèi)存空間中,程序員能用多種標(biāo)準(zhǔn)程序環(huán)境去開(kāi)發(fā)應(yīng)用程序,能聯(lián)合MapObjects與別的軟件實(shí)現(xiàn)地圖與用戶信息的聯(lián)系。MapObjects是美國(guó)ESRi開(kāi)發(fā),是比較流行的組件式GIS開(kāi)發(fā)軟件。MapObjects是一組地圖軟件的組件(ActiveX控件),使用它可以在普通編程語(yǔ)言(如VB)上實(shí)現(xiàn)主要的地理信息系統(tǒng)(其中主要是電子地圖功能)功能。通過(guò)MapObjects可以靈活地建立適合用戶的信息系統(tǒng)。
2.1 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
根據(jù)系統(tǒng)結(jié)構(gòu)設(shè)計(jì)的幾個(gè)原則,即系統(tǒng)的代碼要統(tǒng)一,設(shè)計(jì)規(guī)范要標(biāo)準(zhǔn),傳遞語(yǔ)言要盡可能一致;系統(tǒng)應(yīng)具有較好的開(kāi)放性和結(jié)構(gòu)的可變性,采用模塊化結(jié)構(gòu),提高各模塊的獨(dú)立性,盡可能減少模塊間的數(shù)據(jù)偶合;系統(tǒng)抵御外界干擾的能力及受外界干擾時(shí)的恢復(fù)能力;在滿足系統(tǒng)需求的前提下,盡可能減小系統(tǒng)的開(kāi)銷(xiāo),我們做了如下設(shè)計(jì)(如圖1)。
2.2 系統(tǒng)開(kāi)發(fā)與集成
本系統(tǒng)地圖采用南京交通職業(yè)技術(shù)學(xué)院地圖,通過(guò)軟件學(xué)生可以在課程學(xué)習(xí)中通過(guò)該軟件來(lái)核實(shí)自己的實(shí)際作業(yè)成果,查詢(xún)學(xué)院的一些基礎(chǔ)地理信息(如圖2)。
3 結(jié)束語(yǔ)
一般來(lái)講,自主設(shè)計(jì)空間數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫(kù),利用VB等高級(jí)編程語(yǔ)言開(kāi)發(fā)開(kāi)發(fā)地圖應(yīng)用軟件,要求具備雄厚的科研力量和巨額的開(kāi)發(fā)費(fèi)用;引進(jìn)國(guó)外的先進(jìn)的地圖軟件(如ARC/INFO),結(jié)合自己的需求進(jìn)行開(kāi)發(fā),比較簡(jiǎn)便易行;面向?qū)ο蟮目梢曢_(kāi)發(fā)環(huán)境給大家提供了一種開(kāi)發(fā)周期短,成本低,可以脫離大型商業(yè)GIS軟件平臺(tái)獨(dú)立運(yùn)行的機(jī)會(huì),今后可以為不同的人群提供服務(wù)。
課題來(lái)源:南京交通職業(yè)技術(shù)學(xué)院青年基金課題
參考文獻(xiàn)
[1] 劉軒明.基于衛(wèi)星圖片的數(shù)字地圖開(kāi)發(fā)與應(yīng)用[D].哈爾濱工業(yè)大學(xué)碩士論文,2009.
[2] 劉劍.關(guān)于開(kāi)發(fā)地形圖成圖軟件的看法[C].《大地測(cè)量與地球動(dòng)力學(xué)進(jìn)展》論文集,2004.
[3] 張世強(qiáng)等.基于MapObjects的GIS應(yīng)用開(kāi)發(fā)淺析[J].遙感技術(shù)與應(yīng)用,2000(9):194-198.
[4] 王育紅等.利用VB和MapObjects開(kāi)發(fā)GIS應(yīng)用軟件[J].桂林工學(xué)院學(xué)報(bào),2002(1):82-84.
[5] 王偉長(zhǎng).地理信息系統(tǒng)控件(ActiveX)-MapObjects培訓(xùn)教程[M].北京:科學(xué)出版社,2000.