前言:本站為你精心整理了在復(fù)雜應(yīng)用系統(tǒng)中圖結(jié)構(gòu)與GIS組件的應(yīng)用范文,希望能為你的創(chuàng)作提供參考價(jià)值,我們的客服老師可以幫助你提供個(gè)性化的參考范文,歡迎咨詢。
摘要:通信資源的應(yīng)用可謂無處不在,而要想反映各個(gè)資源之間的這種錯(cuò)綜復(fù)雜的關(guān)系,簡單的線性結(jié)構(gòu)已不能滿足需求,于是圖結(jié)構(gòu)的采用成為應(yīng)用主流。為了能夠使得圖結(jié)構(gòu)反映的實(shí)際地理情況更加形象直觀的表現(xiàn)出來,gis技術(shù)的應(yīng)用更是不容忽視。
1引言
目前,大多數(shù)系統(tǒng)開發(fā)都是基于單純的圖結(jié)構(gòu)組件或者GIS組件開發(fā),但在一些比較復(fù)雜的應(yīng)用開發(fā)中(如通信資源拓?fù)鋱D開發(fā)),圖結(jié)構(gòu)(Graphic)組件或GIS組件的單純應(yīng)用就不能滿足需求,而是需要兩者的結(jié)合應(yīng)用,即既在需要圖結(jié)構(gòu)方式的同時(shí)又需要地圖背景方式展現(xiàn)通信資源拓?fù)鋱D?,F(xiàn)結(jié)合開發(fā)過程中遇到的問題,經(jīng)過探索給出一個(gè)解決此類問題的方案。
2圖組件應(yīng)用開發(fā)
圖是與樹類似的一種數(shù)據(jù)結(jié)構(gòu),包括頂點(diǎn)和邊。圖的應(yīng)用由物理或抽象問題所決定,圖的應(yīng)用也是非常廣泛的,如流程圖、UML圖、交通線路圖、網(wǎng)絡(luò)圖、通信資源拓?fù)鋱D等等?;趫D的開發(fā)組件也非常多,如JGraph等。
JGraph具有相當(dāng)高的交互性和自動(dòng)化,是一套專為圖定做的組件。其主要用途是在一些需要表示圖結(jié)構(gòu)的應(yīng)用中,比如流程圖、UML、交通線路、網(wǎng)絡(luò)等等。
JGraph主要包括提供數(shù)據(jù)源Graph和繪制數(shù)據(jù)源的GraphPane組件。Graph表示JGraph中的數(shù)據(jù)模型,為繪制組件提供數(shù)據(jù)來源。Graph是元素的容器,包括像在鐵路交通線路圖中鐵路站點(diǎn)等類似的頂點(diǎn)元素,或像鐵路線等類似的邊元素。Graph還提供監(jiān)聽器來管理元素的添加、刪除、清除操作。GraphPane是JGraph中的繪制組件。它主要展現(xiàn)具有像通信資源拓?fù)鋱D這樣的圖結(jié)構(gòu)性質(zhì)的數(shù)據(jù)。GraphPane提供了對圖的必要操作,從總體上可以平移、縮放整個(gè)拓?fù)鋱D。支持對頂點(diǎn)的移動(dòng)位置、改變大小等操作,支持兩個(gè)接點(diǎn)之間連邊,并且可以折疊邊。JGraph還提供了開發(fā)的基本類型元素,開發(fā)人員可以繼承基類元素,或設(shè)置元素的樣式屬性定制自己所需要元素??傊甁Graph給開發(fā)人員提供繪制圖結(jié)構(gòu)數(shù)據(jù)的良好組件。
3GIS組件應(yīng)用開發(fā)
GIS是由計(jì)算機(jī)硬件、軟件和不同方法組成的計(jì)算機(jī)系統(tǒng)。該系統(tǒng)設(shè)計(jì)用來支持空間數(shù)據(jù)的采集、管理、處理、分析、建模和顯示,以便解決復(fù)雜的規(guī)劃和管理問題。GIS廣泛應(yīng)用于跟地理要素相關(guān)的領(lǐng)域。還有更多領(lǐng)域正在收集和使用空間內(nèi)容和服務(wù),空間內(nèi)容和服務(wù)是很多價(jià)值鏈和企業(yè)工作流的重要組成部分。通信資源拓?fù)鋱D中地圖背景正是空間應(yīng)用的恰好說明。空間應(yīng)用開發(fā)組件層出不窮,地圖繪制控件如開源項(xiàng)目SwingLabs的JMapViewer控件,開源WFS-T和WMS服務(wù)器如GeoServer。
JXMapViewer是開發(fā)人員在SwingLabs創(chuàng)建的一個(gè)開源(LGPL)Swing組件。本質(zhì)上講,JXMapViewer是一個(gè)特殊的可以繪制地圖JPanel。JXMapViewer基本功能可以從WMS服務(wù)器上加載地圖,JXMapViewer把整塊地圖切割成無數(shù)地圖塊,當(dāng)要呈現(xiàn)當(dāng)前屏幕的地圖時(shí),JXMapViewer會(huì)根據(jù)當(dāng)前的屏幕地理坐標(biāo)找到要呈現(xiàn)的地圖塊,再加載地圖塊,然后把這些地圖塊繪制在JPanel上,效果如JXMapViewer運(yùn)行示例圖。地圖塊提供緩沖機(jī)制,加載地圖塊的時(shí)候,地圖塊會(huì)從WMS服務(wù)器根據(jù)地圖塊信息去加載地圖,已經(jīng)加載的地圖塊,JXMapViewer則直接繪制地圖塊。用戶只需將地圖添加到Swing應(yīng)用程序中,操作方法和其他JPanel相同。
Geoserver是一個(gè)功能齊全,遵循OGC開放標(biāo)準(zhǔn)的開源WFS-T和WMS服務(wù)器。利用Geoserver可以把數(shù)據(jù)作為maps/images來(利用WMS來實(shí)現(xiàn))也可以直接實(shí)際的數(shù)據(jù)(利用WFS來實(shí)現(xiàn)),同時(shí)也提供了修改,刪除和新增的功能(利用WFS-T)。
4拓?fù)鋱D對圖和GIS組件的需求
通信資源拓?fù)鋱D是通信設(shè)備資源在地理空間中的一個(gè)物理布局,常見通信資源拓?fù)鋱D如光纜資源拓?fù)鋱D等。光纜資源包括站點(diǎn)、光交接箱、光纜段等,光纜資源需要以拓?fù)鋱D的形式展現(xiàn)。光纜資源拓?fù)浼刃枰獔D結(jié)構(gòu)方式展現(xiàn)資源結(jié)構(gòu),同時(shí)還需要地圖背景方式展現(xiàn)光纜資源的地理布局。用JGraph來開發(fā)光纜資源拓?fù)鋱D時(shí),站點(diǎn)、光交接箱剛好構(gòu)成Graph中的頂點(diǎn)元素,光纜段就構(gòu)成了邊元素,他們交織在一起構(gòu)成一個(gè)圖結(jié)構(gòu)的數(shù)據(jù),JGraph再用GraphPane繪制光纜資源。JGraph目前不能繪制地圖背景,單純使用JGraph無法繪制光纜資源拓?fù)鋱D的地圖背景。JXMapViewer可以提供地圖背景展現(xiàn)地理空間,但JXMapViewer還不能夠用圖結(jié)構(gòu)方式展現(xiàn)光纜資源。
比較JGraph和JXMapViewer,這兩個(gè)開發(fā)組件各自提供了比較優(yōu)勢力量滿足實(shí)際的需求。隨著應(yīng)用開發(fā)的深入,客戶需求不斷變化,對圖結(jié)構(gòu)和GIS地圖空間混合展現(xiàn)的需求越來越多,單純的應(yīng)用JGraph或JXMapViewer難以滿足此需求。
5圖和GIS組件結(jié)合開發(fā)解決方案
面對圖與GIS的混合開發(fā)需求,可以結(jié)合JGraph和JXMapViewer的各自優(yōu)勢力量,組成新的組件來開發(fā)通信資源拓?fù)鋱D,這種方式就恰好滿足了對圖和GIS混合的需求。
JGraph主要繪制圖結(jié)構(gòu)數(shù)據(jù),JXMapViewer主要展現(xiàn)地圖背景,根據(jù)JXMapViewer繪制地圖背景的原理,以同樣方式在GraphPane的背景上繪制地圖,根據(jù)這種方式開發(fā)出一個(gè)新的帶有GIS背景功能的MapGraph。MapGraph提供屏幕坐標(biāo)到地理坐標(biāo)的轉(zhuǎn)換,展示的元素按照地理坐標(biāo)在GraphPane上顯示。MapJGraph將重寫GraphPane中的漫游、縮放功能??s放將按照縮放層次加載背景地圖,隨地圖加載元素不改變其地理坐標(biāo),將移動(dòng)其屏幕的坐標(biāo)適應(yīng)地圖的縮放。漫游也將隨著用戶對地圖移動(dòng)而加載GraphPane未顯示的地圖部分,同時(shí)加載屏幕外的元素。我們可以用GeoServer提供WMS服務(wù)器,為GraphPane加載地圖提供服務(wù)。
MapGraph具有了展現(xiàn)圖結(jié)構(gòu)數(shù)據(jù)和地圖背景的雙重功能。運(yùn)用MapGraph開發(fā)通信資源拓?fù)鋱D,就能夠滿足拓?fù)鋱D對圖結(jié)構(gòu)和地圖背景的需求。
6結(jié)語
隨著微機(jī)的發(fā)展和數(shù)字化信息產(chǎn)品在全世界的普及,GIS技術(shù)的應(yīng)用已深入到各行各業(yè)。如何能使GIS在應(yīng)用中發(fā)揮更好的優(yōu)勢,提高經(jīng)濟(jì)效益及擴(kuò)大應(yīng)用范圍,是所有程序開發(fā)人員今后努力的方向。圖結(jié)構(gòu)和GIS技術(shù)的結(jié)合開發(fā)突破原有單純組件開發(fā)思想,使得圖結(jié)構(gòu)和GIS技術(shù)能夠更好的發(fā)揮優(yōu)勢。
部級期刊 審核時(shí)間1個(gè)月內(nèi)
教育部人文社會(huì)科學(xué)重點(diǎn)研究基地清華大學(xué)技術(shù)創(chuàng)新研究中心;中國技術(shù)經(jīng)濟(jì)學(xué)會(huì)復(fù)雜科學(xué)管理分會(huì)