本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及基于flex技術(shù)的地圖訪問操作插件生成方法及系統(tǒng)。
背景技術(shù):
隨著國家城市的發(fā)展和國內(nèi)科技技術(shù)的進(jìn)步,對(duì)城市的管理手段也在不斷進(jìn)步,從原來單一的數(shù)據(jù)表格式展示管理到報(bào)表、圖表等數(shù)據(jù)系統(tǒng)管理,近年來,隨著互聯(lián)網(wǎng)和移動(dòng)端的快速發(fā)展,可視化、智能化系統(tǒng)越來越普遍使用,而這些系統(tǒng)很多與地圖有關(guān)聯(lián),它能更直觀的展示出結(jié)果。
目前有許多開發(fā)語言在地圖web系統(tǒng)中運(yùn)用,其中flex占有相當(dāng)大的比例,這與它的許多優(yōu)勢(shì)有關(guān)系的。優(yōu)勢(shì)包括瀏覽器兼容性強(qiáng),界面布局設(shè)計(jì)簡單,具備RIA時(shí)代富客戶端的優(yōu)點(diǎn)(C/S+B/S),簡單易學(xué),界面優(yōu)美且客戶認(rèn)可度高。
目前,在地圖訪問操作插件還沒有利用Flex技術(shù),現(xiàn)有的地圖訪問操作插件的生成運(yùn)行速度慢、不夠底層且容易被反編譯。
技術(shù)實(shí)現(xiàn)要素:
為解決現(xiàn)有技術(shù)存在的不足,本發(fā)明公開了基于flex技術(shù)的地圖訪問操作插件生成方法及系統(tǒng),本專利目前是針對(duì)業(yè)務(wù)系統(tǒng)開發(fā)的,它帶來的好處一是可以優(yōu)化項(xiàng)目開發(fā),二是使系統(tǒng)更安全,方便。
為實(shí)現(xiàn)上述目的,本發(fā)明的具體方案如下:
基于flex技術(shù)的地圖訪問操作插件生成方法,包括以下步驟:
創(chuàng)建flex項(xiàng)目,引入該項(xiàng)目所需要的組件和圖片;
配置地圖服務(wù)的引用,包括配置地圖的范圍、坐標(biāo)系和多圖層的使用,并繪制地圖操作工具和頁面,針對(duì)不同工具使用相對(duì)應(yīng)的樣式圖片展示;
在flex項(xiàng)目主頁面中編寫對(duì)外默認(rèn)的地圖展示查詢;通過外部的調(diào)用接口將地圖信息進(jìn)行展示;
flex項(xiàng)目清理,自動(dòng)構(gòu)成Flex插件。
進(jìn)一步的,所述flex項(xiàng)目是在Adobe Flash Builder中創(chuàng)建的。
進(jìn)一步的,所述繪制地圖操作工具包括地圖的移動(dòng)工具、地圖放大工具、地圖縮小工具、篩選地圖圖層工具及地圖標(biāo)注工具。
進(jìn)一步的,所述flex插件拷貝至使用地圖服務(wù)的項(xiàng)目目錄下,將所需的flex插件的jar包放到項(xiàng)目下供業(yè)務(wù)系統(tǒng)引用。
進(jìn)一步的,所述業(yè)務(wù)系統(tǒng)對(duì)地圖的操作是通過調(diào)用flex插件接口實(shí)現(xiàn)的,主要包括更改圖層顯示、增加標(biāo)注、信息提示、信息查詢、目標(biāo)定位、地圖放大、地圖縮小功能。
基于flex技術(shù)的地圖訪問操作插件生成系統(tǒng),包括:
flex項(xiàng)目創(chuàng)建模塊,用于創(chuàng)建flex項(xiàng)目,引入該項(xiàng)目所所要的組件和圖片;
配置模塊,用于配置地圖服務(wù)的引用,包括配置地圖的范圍、坐標(biāo)系和多圖層的使用,并繪制地圖操作工具和頁面,針對(duì)不同工具使用相對(duì)應(yīng)的樣式圖片展示;
接口生成模塊,用于在flex項(xiàng)目主頁面中編寫對(duì)外默認(rèn)的地圖展示查詢;通過外部的調(diào)用接口將地圖信息進(jìn)行展示;
flex插件自動(dòng)構(gòu)成模塊,用于利用flex項(xiàng)目清理,自動(dòng)構(gòu)成flex插件。
進(jìn)一步的,所述flex項(xiàng)目是在Adobe Flash Builder中創(chuàng)建的。
進(jìn)一步的,所述繪制地圖操作工具包括地圖的移動(dòng)工具、地圖放大工具、地圖縮小工具、篩選地圖圖層工具及地圖標(biāo)注工具。
進(jìn)一步的,所述flex插件拷貝至使用地圖服務(wù)的項(xiàng)目目錄下,將所需的flex插件的jar包放到項(xiàng)目下供業(yè)務(wù)系統(tǒng)引用。
進(jìn)一步的,所述業(yè)務(wù)系統(tǒng)對(duì)地圖的操作是通過調(diào)用flex插件接口實(shí)現(xiàn)的,主要包括更改圖層顯示、增加標(biāo)注、信息提示、信息查詢、目標(biāo)定位、地圖放大、地圖縮小功能。
本發(fā)明的有益效果:
本專利目前是針對(duì)業(yè)務(wù)系統(tǒng)開發(fā)的,它帶來的好處一是可以優(yōu)化項(xiàng)目開發(fā)。在業(yè)務(wù)系統(tǒng)應(yīng)用比較多的是地圖上查詢、定位、標(biāo)注等功能,考慮各系統(tǒng)模塊對(duì)地圖操作一致、代碼的復(fù)用以及縮減開發(fā)周期,只需用flex開發(fā),將對(duì)地圖操作封裝到一個(gè)插件,業(yè)務(wù)系統(tǒng)只需要引用插件接口即可。二是使系統(tǒng)更安全、方便。地圖操作封裝到插件,減少代碼的泄露,有需求變動(dòng)或系統(tǒng)升級(jí)改造時(shí),修改量小,這樣風(fēng)險(xiǎn)也會(huì)降到最低。本專利打破了傳統(tǒng)開發(fā)模式,將對(duì)地圖的操作全部通過調(diào)用flex插件接口實(shí)現(xiàn),與系統(tǒng)內(nèi)其他業(yè)務(wù)模塊耦合性很低,這樣既提高了系統(tǒng)開發(fā)效率又降低了風(fēng)險(xiǎn)還能將多種技術(shù)有效結(jié)合,大大提高了系統(tǒng)的運(yùn)行效率。其中本專利提到的flex插件是Adobe Flash Builder開發(fā)工具創(chuàng)建的flex項(xiàng)目編譯生成的,將插件引用到業(yè)務(wù)系統(tǒng)中,通過調(diào)用插件預(yù)留接口來實(shí)現(xiàn)地圖查詢,地圖標(biāo)注,多圖層地圖數(shù)據(jù)的展示以及其他地圖操作。
附圖說明
圖1本發(fā)明的插件生成整體流程圖。
具體實(shí)施方式:
下面結(jié)合附圖對(duì)本發(fā)明進(jìn)行詳細(xì)說明:
本發(fā)明使用flex技術(shù)將地圖的操作使用和一些配置生成插件這樣能達(dá)到安全性有保障,這是因?yàn)閒lex利用經(jīng)過大量嚴(yán)謹(jǐn)測(cè)試的FlashPlayer安全模塊。并且有完整的瀏覽器可移植性,任何支持FlashPlayer的瀏覽器(涵蓋了大部分瀏覽器)都支持flex及其腳本語言ActionScript(AS),這與Ajax形成鮮明的對(duì)比,Ajax受在不同瀏覽器中實(shí)現(xiàn)的不兼容JavaScript的影響;一致的觀感,F(xiàn)lashPlayer以向所有操作系統(tǒng)和瀏覽器提供一致的觀感著稱,F(xiàn)lex使用的是FlashPlayer引擎,所以它也將提供一致的觀感。
本發(fā)明在基于Adobe Flash Builder進(jìn)行開發(fā)生成地圖訪問操作插件,具體應(yīng)用包括空間查詢,地圖標(biāo)注,多圖層地圖數(shù)據(jù)的展示以及分別查詢操作等。本申請(qǐng)的地圖是基于ArcGIS Server發(fā)布使用的。
具體方案介紹:
如圖1所示,在Adobe Flash Builder中創(chuàng)建flex項(xiàng)目,將需要的組件加到項(xiàng)目中(Flexlib.swc、agslib.2.3.1.swf、smallMap.swf、as3corelib.swf等)。在主頁面中配置地圖加載的圖層和對(duì)圖層數(shù)據(jù)操作方法。繪制地圖操作工具、編寫地圖工具功能實(shí)現(xiàn)代碼。
具體步驟如下:
步驟(1):創(chuàng)建項(xiàng)目、構(gòu)建環(huán)境。在Adobe Flash Builder中創(chuàng)建flex項(xiàng)目,創(chuàng)建運(yùn)行主頁面,引入所需要的組件和圖片,搭建好可運(yùn)行環(huán)境。對(duì)于本申請(qǐng)中的組件是一個(gè)文件包,是將某些功能的相關(guān)文件打成一個(gè)包,類似于java中jar包,在引入組件后直接使用有關(guān)功能而不用技術(shù)人員重寫。本申請(qǐng)需要開發(fā)flex項(xiàng)目自帶的組件和地圖操作組件,地圖操作組件需要到ArcGIS官網(wǎng)上下載。
步驟(2):繪制地圖的展示窗口和操作工具欄。在主頁面中配置好地圖服務(wù)的引用,將地圖的范圍、坐標(biāo)系和多圖層的使用等配置好,利用Adobe Flash Builder自帶繪制工具繪制出地圖操作工具和頁面或者利用代碼進(jìn)行創(chuàng)建。這里創(chuàng)建的工具欄包括地圖的移動(dòng)工具、地圖放大工具、地圖縮小工具、篩選地圖圖層工具、地圖標(biāo)注工具等等,針對(duì)不同工具的使用相對(duì)應(yīng)的樣式圖片展示,然后編寫相應(yīng)的功能代碼。
步驟(3):開發(fā)地圖展示功能和對(duì)外接口。在項(xiàng)目主頁面中編寫加載插件時(shí)默認(rèn)的地圖展示功能、對(duì)外提供地圖操作的方法接口,其中地圖展示功能是在插件被業(yè)務(wù)系統(tǒng)引用時(shí)加載地圖服務(wù)并將地圖展示出來;開發(fā)外部的調(diào)用接口,主要是將地圖信息對(duì)外展示出來,包含了地名、公司、項(xiàng)目、樓宇、旅游景點(diǎn)、河流、山等地圖上所有的信息。
步驟(4):生成flex插件。代碼編輯完畢后,點(diǎn)擊Adobe Flash Builde項(xiàng)目清理緩存,重新編譯項(xiàng)目并根據(jù)代碼將項(xiàng)目構(gòu)成.swf格式插件。
步驟(6):業(yè)務(wù)系統(tǒng)引用插件。將插件拷貝到使用地圖服務(wù)的項(xiàng)目目錄下,將所需的jar包放到項(xiàng)目下。
步驟(7):flex插件使用。開發(fā)業(yè)務(wù)系統(tǒng)對(duì)地圖的操作是通過調(diào)用flex插件接口實(shí)現(xiàn)的,主要包括更改圖層顯示、增加標(biāo)注、信息提示、信息查詢、目標(biāo)定位、地圖放大、地圖縮小等功能。
與本申請(qǐng)的上述方法相對(duì)應(yīng)的基于flex技術(shù)的地圖訪問操作插件生成系統(tǒng),包括:
flex項(xiàng)目創(chuàng)建模塊,用于創(chuàng)建flex項(xiàng)目,引入該項(xiàng)目所所要的組件和圖片;
配置模塊,用于配置地圖服務(wù)的引用,包括配置地圖的范圍、坐標(biāo)系和多圖層的使用,并繪制地圖操作工具和頁面,針對(duì)不同工具使用相對(duì)應(yīng)的樣式圖片展示;
接口生成模塊,用于在flex項(xiàng)目主頁面中編寫對(duì)外默認(rèn)的地圖展示查詢;通過外部的調(diào)用接口將地圖信息進(jìn)行展示;
flex插件自動(dòng)構(gòu)成模塊,用于利用flex項(xiàng)目清理,自動(dòng)構(gòu)成flex插件。
上述雖然結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式進(jìn)行了描述,但并非對(duì)本發(fā)明保護(hù)范圍的限制,所屬領(lǐng)域技術(shù)人員應(yīng)該明白,在本發(fā)明的技術(shù)方案的基礎(chǔ)上,本領(lǐng)域技術(shù)人員不需要付出創(chuàng)造性勞動(dòng)即可做出的各種修改或變形仍在本發(fā)明的保護(hù)范圍以內(nèi)。