摘要;隨著GPS(GIobal Positioning System)奎球定位系統(tǒng)的普及和應(yīng)用,車裁定位作為一個(gè)新型研究領(lǐng)域從二十世紀(jì)末開(kāi)始被廣大開(kāi)發(fā)商重視。本文通過(guò)模擬車裁定位對(duì)車輛跟蹤.出行路線規(guī)劃和導(dǎo)航、信息查詢等功能進(jìn)行統(tǒng)一,有序,高效率管理,系統(tǒng)堆護(hù)性好,同時(shí)增強(qiáng)了用戶體驗(yàn)。
關(guān)鍵詞:車裁定位ArcSDE Arcgis server Flex xampp
中圖分類號(hào);U463.6 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào);1674-098X(2012)02(b)-0046-01
GIS(Geographic Information System)即地理信息系統(tǒng),在GPS及路徑優(yōu)化中發(fā)揮著重要作用。ArcGIs是一個(gè)壘面的、可伸縮的GIS平臺(tái),它可以被集中在應(yīng)用服務(wù)器上和Web服務(wù)器上,將GIS的功能通過(guò)網(wǎng)絡(luò)傳遞給任意多的用戶,可以集中一些GIS邏輯,將其嵌入和部署在用戶定制的應(yīng)用中。Flex是一個(gè)高效、免費(fèi)的開(kāi)放源框架,可用于構(gòu)建具有表現(xiàn)力的web應(yīng)用程序,這些應(yīng)用程序利用Adobe Flash Player和AdobeAIR,運(yùn)行時(shí)跨瀏覽器、桌面和操作系統(tǒng)實(shí)現(xiàn)一致的部署。Flex比傳統(tǒng)的HTML集成度更好,實(shí)現(xiàn)了控件的拖拽即用等功能,更適于頁(yè)面樣式的設(shè)計(jì)。
1系統(tǒng)功能需求
本系統(tǒng)提供基本的系統(tǒng)用戶管理、車輛管理、駕駛員管理;定位到具體車輛,查看車輛基本情況。具備對(duì)車輛的監(jiān)控管理,為車輛選擇行駛的最優(yōu)路線;歷史回放,查看近期車輛的活動(dòng)情況,有無(wú)超速等違規(guī)行為;地圖操作,實(shí)現(xiàn)對(duì)地圖的放大、縮小、漫游、壘屏、自定義地圖上的標(biāo)注、測(cè)距、側(cè)面積、切換地圖等。
2系統(tǒng)架構(gòu)設(shè)計(jì)
2.1設(shè)計(jì)總體思想
本系統(tǒng)設(shè)計(jì)離不開(kāi)數(shù)據(jù)庫(kù),而數(shù)據(jù)庫(kù)中的表都附帶有很多屬性,例如坐標(biāo)、經(jīng)緯度等,系統(tǒng)最底層的工作即是利用ArcMap制作地圖,將地圖中的數(shù)據(jù)導(dǎo)入到空間數(shù)據(jù)庫(kù)SDE中,Arcgis Server根據(jù)空間數(shù)據(jù)庫(kù)對(duì)前臺(tái)提供地圖服務(wù),前臺(tái)Flex會(huì)將Arcgis~erver提供的地圖加載進(jìn)系統(tǒng)中并且會(huì)將地圖服務(wù)封裝成一個(gè)map對(duì)象以供后續(xù)操作,系統(tǒng)所有的邏輯都是基于這個(gè)加載進(jìn)來(lái)的地圖上進(jìn)行的;底層的數(shù)據(jù)庫(kù)分為業(yè)籌數(shù)據(jù)庫(kù)(關(guān)系數(shù)據(jù)庫(kù))和空間數(shù)據(jù)庫(kù),其書,系統(tǒng)用戶管理、車輛管理、駕駛員管理值接操作的是業(yè)務(wù)數(shù)據(jù)庫(kù),車輛定位、地圖操作作等應(yīng)用直接操作的是SDE空間數(shù)據(jù)庫(kù)。當(dāng)前臺(tái)請(qǐng)求操作時(shí),F(xiàn)lex通過(guò)Blazeds向服務(wù)器提供請(qǐng)求,并且通常返回一個(gè)與Java3ean對(duì)應(yīng)的前臺(tái)Actionscript Bean,再?gòu)?qiáng)制轉(zhuǎn)成此前臺(tái)bean進(jìn)行數(shù)據(jù)的操作,前臺(tái)Flex根據(jù)后臺(tái)返回來(lái)的信息判斷下一步的動(dòng)作,必要時(shí)要操作map對(duì)象更新地圖,再基于此地圖完成各種業(yè)務(wù)邏輯。
2.2系統(tǒng)模塊劃分
根據(jù)使用底層數(shù)據(jù)方式的不同,系統(tǒng)分為兩個(gè)功能模塊:基于關(guān)系數(shù)據(jù)庫(kù)模塊和基于空間數(shù)據(jù)庫(kù)模塊。
2.1.1基于關(guān)系數(shù)據(jù)庫(kù)模塊
該模塊屬于基本的系統(tǒng)操作模塊,實(shí)現(xiàn)方法是簡(jiǎn)單調(diào)用關(guān)系數(shù)據(jù)庫(kù)MySQL里存儲(chǔ)的數(shù)據(jù),在Flex頁(yè)面中加以顯示。同時(shí),用戶也能將修改過(guò)的記錄重新存儲(chǔ)到數(shù)據(jù)庫(kù)。該模塊包括功能有:系統(tǒng)用戶管理、車輛管理、駕駛員管理。本模塊需要直接與MySQL關(guān)系數(shù)據(jù)庫(kù)打交道,在MySQL中執(zhí)行創(chuàng)建數(shù)據(jù)表、插入數(shù)據(jù)等操作。
2.1.2基于空間數(shù)據(jù)庫(kù)模塊
該模塊需要實(shí)現(xiàn)系統(tǒng)的核心功能,將空間數(shù)據(jù)庫(kù)ArcGIS與關(guān)系數(shù)據(jù)庫(kù)MySQL關(guān)聯(lián)起來(lái)后,當(dāng)需要對(duì)MySQL中數(shù)據(jù)進(jìn)行更改時(shí),只需打開(kāi)ArcGIS客服端軟件(ArcMap或者ArcCatalog)就能對(duì)MySQL中的屬性數(shù)據(jù)進(jìn)行更改。本模塊雖然訪問(wèn)的最底層數(shù)據(jù)還是存儲(chǔ)于MySQL中,但是直接避免了和MySQL關(guān)系數(shù)據(jù)庫(kù)打交道。
2.3主要數(shù)據(jù)模型
本系統(tǒng)主要用關(guān)系模型。此模型結(jié)構(gòu)靈活,能滿足所有布爾邏輯運(yùn)算和數(shù)學(xué)運(yùn)算規(guī)則形成的查詢要求,能搜索、組合和比較不同類型的數(shù)據(jù),增加和刪除數(shù)據(jù)也非常方便。
2.4出錯(cuò)設(shè)計(jì)
本系統(tǒng)為用戶提供出錯(cuò)信息的方式有:出錯(cuò)提示及提醒機(jī)制。
2.5安全保密設(shè)計(jì)
在系統(tǒng)安全保密設(shè)計(jì)中,本系統(tǒng)采用的是身份驗(yàn)證,在登錄本系統(tǒng)時(shí),系統(tǒng)讓用戶需要輸入用戶名和密碼進(jìn)行驗(yàn)證。
3系統(tǒng)主要功能的實(shí)現(xiàn)
3.1基于關(guān)系數(shù)據(jù)庫(kù)功能模塊的實(shí)現(xiàn)
本功能主要是通過(guò)Flex與PHP通信,實(shí)現(xiàn)前臺(tái)與數(shù)據(jù)庫(kù)的交互。系統(tǒng)采用Flex自帶的數(shù)據(jù)連接創(chuàng)建模板的方式實(shí)現(xiàn)Flex與PHP的通信,創(chuàng)建一個(gè)小型的應(yīng)用系統(tǒng)。該模塊實(shí)現(xiàn)的功能有:系統(tǒng)用戶管理、車輛管理、駕駛員管理。以車輛管理為例進(jìn)行闡述,在使用數(shù)據(jù)連接創(chuàng)建完模板之后,會(huì)產(chǎn)生幾個(gè)文件,其中Cars.php是服務(wù)端用于操作數(shù)據(jù)庫(kù)的類文件。在客戶端使用模板(Modu),模板會(huì)調(diào)用生成的carsScript.as文件里面的方法,實(shí)現(xiàn)客戶端增、刪、改。此時(shí)無(wú)需編寫PHP代碼,只需使HTTPService組件與模板文件關(guān)聯(lián)起來(lái)即可實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作。通過(guò)HTTPService組件將客戶端要求執(zhí)行的方法insert和參數(shù)parameters發(fā)送到服務(wù)端,然后將執(zhí)行結(jié)果返回。
3.2基于空間數(shù)據(jù)庫(kù)功能模塊的實(shí)現(xiàn)
本功能主要是通過(guò)BlazeDS實(shí)現(xiàn)Flex與數(shù)據(jù)庫(kù)通信,從而實(shí)現(xiàn)前臺(tái)與后臺(tái)數(shù)據(jù)的交互。在Flex與空間數(shù)據(jù)庫(kù)通信時(shí),BlazeDS會(huì)作為數(shù)據(jù)中間層(相當(dāng)于電腦硬件里面的緩存的作用),分別與Flex端和服務(wù)器端雙向數(shù)據(jù)交互。該模塊實(shí)現(xiàn)的功能有:車輛定位、監(jiān)控管理、地圖操作、歷史回放等。
4結(jié)語(yǔ)
本系統(tǒng)闡述了開(kāi)發(fā)的全過(guò)程,從功能需求、架構(gòu)設(shè)計(jì)到功能模塊的實(shí)現(xiàn),利用了Flex面向?qū)ο蟮木幊棠芰?,達(dá)到了預(yù)期的設(shè)計(jì)目的,實(shí)現(xiàn)了對(duì)各個(gè)項(xiàng)目的管理。隨著社會(huì)經(jīng)濟(jì)的發(fā)展,開(kāi)發(fā)具有高度互動(dòng)性、豐富用戶體驗(yàn)以及功能強(qiáng)大客戶端的要求日異增長(zhǎng),F(xiàn)lex必將在企業(yè)應(yīng)用程序的開(kāi)發(fā)中發(fā)揮更大的作用。
參考文獻(xiàn)
[1](美)Tariq Ahmed、/on Hirschi、FaisalAbid,著.李松峰,譯.Flex 3實(shí)戰(zhàn).清華大學(xué)出版社,2010.
[2]陳爽,付凱.Flex與ActionScript程序開(kāi)發(fā).清華大學(xué)出版社,北京交通大學(xué)出版社,2010.