專利名稱:跨平臺嵌入式地理信息系統(tǒng)的制作方法
技術領域:
本發(fā)明屬于信息處理技術領域,涉及一種地理信息系統(tǒng),尤其涉及一種嵌入式地理信息 系統(tǒng)。
背景技術:
由于GIS (地理信息系統(tǒng))包含的信息量大,其處理對硬件要求高, 一直都是應用在工作 站和高檔的PC機上。但是隨著計算機科學技術的不斷發(fā)展,嵌入式移動設備(車載終端、掌 上電腦(PDA)、智能手機等)的性能有了很大的提高。GIS技術的應用逐步進入了后PC階段。
當前嵌入式GIS的應用主要在以下領域1)汽車導航應用市場。包括出租車、警車、運 鈔車、救護車等特殊車輛的定位導航以及普通民用車的定位導航。有人以北京作了簡單計算, 北京約有10萬輛出租車,全部裝上導航定位系統(tǒng),以每臺5000元計算就是5億的市場,因 此全國的市場規(guī)模估計應該在100億以上。2) PDA、手機GIS應用。在這一平臺上可以開發(fā) 各種專業(yè)應用軟件,如野外測量、數(shù)據(jù)采集、城市指南、旅游導游等應用。也有人估算過, 如果我國一億手機用戶一個月5元的地理信息服務, 一年將是60億的市場。
當前,國內外最為流行的嵌入式GIS開發(fā)平臺有Maplnfo公司的MapX Mobile、 ERIS公 司的ArcPad、超圖公司的eSuperMap以及武漢大學的hMap等。這些產(chǎn)品都已經(jīng)比較成熟、功 能強大且各具特色。
經(jīng)過大量的實驗和分析,上述技術方案還存在以下問題
1) 對跨平臺幾乎沒有提供任何支持,主要都是針對某一操作系統(tǒng)和數(shù)據(jù)引擎丌發(fā)。
2) 產(chǎn)品的可擴展性不夠。在系統(tǒng)設計時,缺少考慮用戶今后擴展產(chǎn)品的需求。
3) 地理數(shù)據(jù)資源格式單一,不支持異構地理數(shù)據(jù)資源的集成。
4) GIS數(shù)據(jù)沒有動態(tài)性。
5) 數(shù)據(jù)存儲松散,數(shù)據(jù)管理混亂。
6) 數(shù)據(jù)操作的效率低。這些問題導致產(chǎn)品普遍具有一定的局限性。
發(fā)明內容
本發(fā)明所要解決的技術問題是提供一種跨平臺嵌入式地理信息系統(tǒng)。 為解決上述技術問題,本發(fā)明采用如下技術方案一種跨平臺嵌入式地理信息系統(tǒng),該系統(tǒng)包括
應用程序層,用于執(zhí)行地圖的基本操作、査詢各類地理信息、路徑分析以及數(shù)據(jù)采集;
及
數(shù)據(jù)服務中間件層,連接所述應用程序層,包括工程管理模塊、地理數(shù)據(jù)管理模塊、顯 示數(shù)據(jù)管理模塊,該數(shù)據(jù)服務中間件層用于對應用程序層屏蔽底層的實現(xiàn)細節(jié),通過地理數(shù) 據(jù)管理模塊和顯示數(shù)據(jù)管理模塊向上層提供地理數(shù)據(jù)和顯示數(shù)據(jù)的存取接口;及
數(shù)據(jù)引擎層,連接所述數(shù)據(jù)服務中間件層;及
平臺相關模塊層,連接所述數(shù)據(jù)引擎層,將與特定操作系統(tǒng)相關的所有操作集中在一起;
及
基礎算法組件,連接所述數(shù)據(jù)引擎層,該基礎算法組件包含所述地理信息系統(tǒng)所需要使 用的GIS算法及數(shù)據(jù)結構;及
地理資源文件層,連接所述數(shù)據(jù)引擎層及平臺相關模塊層,用于提供地理資源的信息;
及
操作系統(tǒng)層,連接所述地理資源文件層,該操作系統(tǒng)層包括若干嵌入式平臺。 作為本發(fā)明的一種優(yōu)選方案,所述系統(tǒng)還包括一類庫,該類庫分別定義應用程序層、數(shù)
據(jù)服務中間件層、數(shù)據(jù)引擎層、平臺相關模塊層、基礎算法組件、地理資源文件層、操作系
統(tǒng)層的相關信息。
作為本發(fā)明的一種優(yōu)選方案,所述數(shù)據(jù)服務中間件層包括工程管理模塊、地理數(shù)據(jù)管理 模塊、顯示數(shù)據(jù)管理模塊;所述地理數(shù)據(jù)管理模塊、顯示數(shù)據(jù)管理模塊連接工程管理模塊。 作為本發(fā)明的一種優(yōu)選方案,所述應用程序層和數(shù)據(jù)服務中間件層的接口是類庫中類以
及類的成員變量和成員函數(shù)。
作為本發(fā)明的一種優(yōu)選方案,所述數(shù)據(jù)服務中間件層是整個類庫對外的主要接口,應用
程序層通過該接口來使用整個類庫。
作為本發(fā)明的一種優(yōu)選方案,所述數(shù)據(jù)引擎層包括數(shù)據(jù)管理模塊、執(zhí)行引擎模塊、網(wǎng)絡
數(shù)據(jù)分析引擎模塊、索引文件記錄管理模塊、緩沖管理模塊、以及存儲管理模塊; 所述數(shù)據(jù)管理模塊連接執(zhí)行引擎模塊、網(wǎng)絡數(shù)據(jù)分析引擎模塊; 所述執(zhí)行引擎模塊、網(wǎng)絡數(shù)據(jù)分析引擎模塊連接索引文件記錄管理模塊; 所述執(zhí)行引擎模塊、網(wǎng)絡數(shù)據(jù)分析引擎模塊、索引文件記錄管理模塊連接緩沖管理模塊; 所述緩沖管理模塊連接存儲管理模塊。
作為本發(fā)明的一種優(yōu)選方案,所述數(shù)據(jù)引擎層采用標準0++進行編碼,基于MobileM即嵌入式GIS文件格式;如果底層的文件為shapefile文件格式、tab文件格式,則將數(shù)據(jù)引擎層 替換為對應于相應文件格式的數(shù)據(jù)引擎。
作為本發(fā)明的一種優(yōu)選方案,所述平臺相關模塊層和數(shù)據(jù)引擎層通過函數(shù)調用和數(shù)據(jù)結
構使用等來進行交互。
作為本發(fā)明的一種優(yōu)選方案,所述地理數(shù)據(jù)管理模塊為一數(shù)據(jù)倉庫,該數(shù)據(jù)倉庫包括若 干數(shù)據(jù)庫,各數(shù)據(jù)庫包括若干實體集合,各實體集合包括若干實體。
作為本發(fā)明的一種優(yōu)選方案,所述實體集合包括簡單實體集合、復合實體集合、復雜實
體集合。
本發(fā)明的有益效果在于本發(fā)明跨平臺嵌入式地理信息系統(tǒng)通過使用不同的數(shù)據(jù)引擎層, 可4同時集成多種異構的嵌入式GIS數(shù)據(jù)資源;同時,通過替換不同的平臺相關模塊層,本 發(fā)明跨平臺嵌入式地理信息系統(tǒng)可以不經(jīng)修改直接運行在多種嵌入式操作系統(tǒng)上。
圖1為本發(fā)明跨平臺嵌入式地理信息系統(tǒng)的組成示意圖。
圖2為本發(fā)明跨平臺嵌入式地理信息系統(tǒng)的組成示意圖。
圖3為數(shù)據(jù)服務中間件層各模塊間的組成示意圖。
圖4為地理數(shù)據(jù)管理模塊的組成示意圖。
圖5為地理數(shù)據(jù)管理模塊與視圖的連接示意圖。
圖6為空間數(shù)據(jù)引擎層的組成示意圖。
具體實施例方式
下面結合附圖詳細說明本發(fā)明的優(yōu)選實施例。
請參閱圖l,本發(fā)明揭示了一種跨平臺嵌入式地理信息系統(tǒng),包括應用程序層l、數(shù)據(jù)服 務中間件層2、數(shù)據(jù)引擎層3、平臺相關模塊層4、基礎算法組件5、地理資源文件層6、操作 系統(tǒng)層7。所述系統(tǒng)還包括一類庫(跨平臺嵌入式GIS基礎類庫),該類庫分別定義應用程序 層l、數(shù)據(jù)服務中間件層2、數(shù)據(jù)引擎層3、平臺相關模塊層4、基礎算法組件5、地理資源文 件層6、操作系統(tǒng)層7的相關信息。
應用程序層l用于執(zhí)行地圖的基本操作(放大、縮小、平移)、査詢各類地理信息、路徑分析以及數(shù)據(jù)采集。該層面對用戶的界面和邏輯控制,不應包含任何核心的GIS算法和數(shù)據(jù) 操作算法。
數(shù)據(jù)服務中間件層2連接所述應用程序層,如圖3所示,數(shù)據(jù)服務中間件層2包括工程 管理模塊21、地理數(shù)據(jù)管理模塊22、顯示數(shù)據(jù)管理模塊23,所述地理數(shù)據(jù)管理模塊22、顯 示數(shù)據(jù)管理模塊23連接工程管理模塊21。該數(shù)據(jù)服務中間件層2用于對應用程序層屏蔽底層 的實現(xiàn)細節(jié),通過地理數(shù)據(jù)管理模塊22和顯示數(shù)據(jù)管理模塊23向上層提供地理數(shù)據(jù)和顯示 數(shù)據(jù)的存取接口。所述應用程序層1和數(shù)據(jù)服務中間件層2的接口是類庫中類以及類的成員 變量和成員函數(shù)。所述數(shù)據(jù)服務中間件層2是整個類庫對外的主要接口,應用程序層1通過 該接口來使用整個類庫。
數(shù)據(jù)引擎層3連接所述數(shù)據(jù)服務中間件層2。請參閱圖6,數(shù)據(jù)引擎層3包括數(shù)據(jù)管理模 塊31、執(zhí)行引擎模塊32、網(wǎng)絡數(shù)據(jù)分析引擎模塊33、索引文件記錄管理模塊34、緩沖管理 模塊35、以及存儲管理模塊36。所述數(shù)據(jù)管理模塊31連接執(zhí)行引擎模塊32、網(wǎng)絡數(shù)據(jù)分析 引擎模塊33;所述執(zhí)行引擎模塊32、網(wǎng)絡數(shù)據(jù)分析引擎模塊33連接索引文件記錄管理模塊 34;所述執(zhí)行引擎模塊32、網(wǎng)絡數(shù)據(jù)分析引擎模塊33、索引文件記錄管理模塊34連接緩沖 管理模塊35;所述緩沖管理模塊35連接存儲管理模塊36。所述數(shù)據(jù)引擎層3采用標準C++ 進行編碼,基于MobileM鄰嵌入式GIS文件格式;如果底層的文件為shapefile文件格式、 tab文件格式,則將數(shù)據(jù)引擎層3替換為對應于相應文件格式的數(shù)據(jù)引擎。
如圖4所示,所述地理數(shù)據(jù)管理模塊31為一數(shù)據(jù)倉庫,該數(shù)據(jù)倉庫包括若干數(shù)據(jù)庫,各 數(shù)據(jù)庫包括若干實體集合,各實體集合包括若干實體。所述實體集合包括簡單實體集合、復 合實體集合、復雜實體集合。
底層地理數(shù)據(jù)的顯示用視圖來控制。視圖負責管理其中所有的圖層,同時還存儲了在一 個視圖里所有圖層共同的顯示特征,比如地圖的中心點、比例尺、旋轉角度、地圖顯示選項 等。圖層存儲并且管理每個實體集合所對應的顯示信息。其作用是控制一個實體集合的顯示 風格,比如可顯示比例、顯示方式、可接收操作等等。實體集加上其特有的顯示屬性即是 圖層。實體集合、數(shù)據(jù)庫、圖層和視圖之間的關系如圖5所示。
平臺相關模塊層4連接所述數(shù)據(jù)引擎層3,將與特定操作系統(tǒng)相關的所有操作集中在一起。 平臺相關模塊層4和數(shù)據(jù)引擎層3通過函數(shù)調用和數(shù)據(jù)結構使用等來進行交互。
基礎算法組件5連接所述數(shù)據(jù)引擎層3,該基礎算法組件5包含所述地理信息系統(tǒng)所需要 使用的GIS算法及數(shù)據(jù)結構。
地理資源文件層6連接所述數(shù)據(jù)引擎層3及平臺相關模塊層4,用于提供地理資源的信息。操作系統(tǒng)層7連接所述地理資源文件層5,該操作系統(tǒng)層包括若干嵌入式平臺;如Windows、 嵌入式Linux。
通過使用不同的數(shù)據(jù)引擎層,該系統(tǒng)可以同時集成多種異構的嵌入式GIS數(shù)據(jù)資源;同 時,通過替換不同的平臺相關模塊層,該系統(tǒng)可以不經(jīng)修改直接運行在多種嵌入式操作系統(tǒng)上。
跨平臺嵌入式GIS基礎類庫在GIS應用中的角色如圖2所示。
從圖中可以看出,整個系統(tǒng)可以分為后臺運行在網(wǎng)格平臺上的服務器程序和前臺運行在 嵌入式移動終端上的客戶端程序。嵌入式移動終端通過運行在其上的嵌入式GIS應用程序向 后臺的服務接口發(fā)出服務請求,通過網(wǎng)格中間件的調度以及高性能計算機群的計算,結果將 返回終端應用程序。終端和后臺之間的交互信息包括實時路況的請求和響應、地理數(shù)據(jù)的 請求和響應、各類興趣點動態(tài)狀況的請求和響應等。顧名思義,本嵌入式GIS基礎類庫以類 庫的形式進行發(fā)布,位于嵌入式GIS應用程序和各種GIS資源文件之間,起到承上啟下的作 用對于應用程序,通過使用、繼承、重載類庫中相關的類來實現(xiàn)所需的功能。類庫為上層 應用程序屏蔽復雜的實現(xiàn)細節(jié)以及底層的文件系統(tǒng),使上層應用程序開發(fā)人員能夠在短時間 內開發(fā)出常用的GIS功能。同時,通過繼承和重載,還可以進行功能的定制和更改;另一方 面,項目使用的GIS資源文件有好多種,例如Mapinfo公司的tab、 ESRI公司的shapefile 等。此外,使用的終端種類也有好幾種,包括手機、PDA、車載終端,運行的操作系統(tǒng)有Windows CE、 Smartphone、嵌入式Linux。如果根據(jù)不同的文件格式,不同的嵌入式平臺開發(fā)不同的應 用系統(tǒng),成本將是巨大的并且其中包含了大量的重復勞動。本類庫設計的目標之一就是支持 一次開發(fā),跨平臺使用。具有集成多文件格式,多操作系統(tǒng)的功能。
本系統(tǒng)中跨平臺嵌入式GIS基礎類庫的設計原理如下
(1) 分層設計。類庫進一步被分為三層,底層細節(jié)進一步封裝后以便今后跨平臺替換。 上層數(shù)據(jù)服務中間件向應用程序提供接口,應該清晰、明確、易于使用。中間數(shù)據(jù)引擎一層 操作文件、實現(xiàn)核心算法。針對不同的文件格式應替換相應的數(shù)據(jù)引擎。底層平臺相關模塊 層,集成平臺相關操作,根據(jù)不同的操作系統(tǒng)也應進行相應替換。
(2) 模塊化設計。既然類庫作為嵌入式GIS的開發(fā)平臺,所提供的服務就是在其上的二 次開發(fā)。模塊化設計對今后的維護、使用和定制意義重大。在分層的基礎上,作者又將每一 層劃為一個個模塊。例如,數(shù)據(jù)服務中間件層被進一步劃分為工程管理模塊、地理數(shù)據(jù)管理模塊以及顯示數(shù)據(jù)管理模塊。這些模塊還將進一步被分割成數(shù)據(jù)倉庫、數(shù)據(jù)庫、實體、地理 屬性、視圖、圖層、顯示屬性等一系列對象。
(3) 平臺無關性設計。這里所指的跨平臺包括支持多種操作系統(tǒng)、集成多種數(shù)據(jù)源、 不依賴于任何數(shù)據(jù)引擎三個方面。作者采用的手段為第一、類庫所有部分采用標準〔++進行 編碼,不依賴于任何非標準函數(shù)或三方類庫(MFC等)。第二、采用分層設計,通過替換最少 代碼以換得最大的可重用性。第三、定義新的嵌入式GIS資源文件格式并在其上實現(xiàn)平臺無 關的數(shù)據(jù)引擎。第四、添加平臺相關模塊層,集中管理極少的平臺相關模塊。
(4) 可擴展性設計。顯然,任何類庫不可能包含用戶需要的所有功能,類庫設計的初衷 也不是試圖達到這個目標。在設計中,為了支持用戶的二次開發(fā),盡可能地預留了許多接口。 用戶可以通過繼承和重載來使用并定制相關的類,以滿足不同應用的不同需求。
(5) 動態(tài)性設計。靜態(tài)的GIS系統(tǒng)已經(jīng)不能滿足人們日益增長的需求,無線網(wǎng)絡的發(fā)展 也使得終端、后臺互動成為了可能。本設計通過使用異構多數(shù)據(jù)源集成技術,使得網(wǎng)絡SOCKET 也能成為數(shù)據(jù)來源之一。比如,在移動終端上不需要存儲任何的地圖資源,在瀏覽時根據(jù)區(qū) 域的范圍以及比例尺的大小動態(tài)地向后臺服務器提出數(shù)據(jù)請求。另一方面,移動終端還可以 動態(tài)地請求相關的屬性信息,比如,某停車場的空余車位數(shù)量、道路的擁塞情況等等。所 有的這一切都是在上層用戶不知情的情況下進行的,也就是說,通過分層屏蔽,上層用戶不 知道所使用的數(shù)據(jù)是來自本地還是后臺。這也給應用程序的開發(fā)人員提供了便利。
本實施例中,提出了一個跨平臺的嵌入式空間數(shù)據(jù)引擎,將其命名為MobileMap。 MobileMap數(shù)據(jù)引擎是一個空間數(shù)據(jù)、非空間數(shù)據(jù)混合的嵌入式數(shù)據(jù)引擎。它占用資源少、效 率高,并且和類庫數(shù)據(jù)服務中間件結合緊密。同時,該引擎不依賴于任何其他數(shù)據(jù)引擎和數(shù) 據(jù)庫技術,可在多個平臺上通用。
如圖6所示,數(shù)據(jù)管理模塊就是前面所介紹的數(shù)據(jù)服務中間件,包括地理數(shù)據(jù)管理模塊 和顯示數(shù)據(jù)管理模塊。該模塊負責打開、關閉數(shù)據(jù)庫(數(shù)據(jù)庫操作);査詢、增添、刪除和修 改數(shù)據(jù)(數(shù)據(jù)操作);實體集合的定義、實體集合中屬性索引的定義(數(shù)據(jù)定義)等等。接下 來,根據(jù)請求的不同將控制分別交給執(zhí)行引擎(數(shù)據(jù)存取操作)和網(wǎng)絡數(shù)據(jù)分析引擎(路徑 分析操作)。這兩個引擎根據(jù)索引、排序情況選擇一種最好的方法來執(zhí)行,生成"物理執(zhí)行隊 列"。(比如如果有一屬性存在索引,則在查詢的時候可采用索引査詢的方法)。
然后執(zhí)行上面產(chǎn)生的"物理執(zhí)行隊列"。當需要操作數(shù)據(jù)時,則向下層模塊提出請求,并 得到相應的數(shù)據(jù)。在此,加入一層緩沖層避免了同一盤塊在短時間內被重復訪問。結合嵌入式設備資源短缺的特點,本設計提出了一種"空間數(shù)據(jù)、非空間數(shù)據(jù)、管理數(shù) 據(jù)統(tǒng)一存儲和管理"的設想。以數(shù)據(jù)庫中常用的"表"概念為紐帶,將所有底層需要存儲和 管理的數(shù)據(jù)結合在一起??偠灾?,本設計中數(shù)據(jù)管理的思路是用表來管理地理數(shù)據(jù);用 表來管理表信息。所有對數(shù)據(jù)的存取和管理全部使用SQL語句來實現(xiàn)。通常來說,空間數(shù)據(jù) 和非空間數(shù)據(jù)是分開進行管理的,這是因為空間數(shù)據(jù)和非空間數(shù)據(jù)的處理方法有著本質的不 同(例如不同的SQL語句、不同的索引算法等)。但是就存儲層面上來看,非空間屬性數(shù)據(jù)可 以用二維表的方式進行存儲,對應于其中的定長字段。為了方便起見,空間矢量數(shù)據(jù)其實也 可以用同樣的方式進行存儲,在實現(xiàn)中它可以被看作是非定長字段。把空間數(shù)據(jù)看作是二維 表的非定長字段方便了數(shù)據(jù)管理,大大降低了實現(xiàn)的復雜度。此外,把所有數(shù)據(jù)表的元數(shù)據(jù) 通過一張系統(tǒng)表來進行統(tǒng)一管理也是本設計數(shù)據(jù)管理的特色。 一般來說,二維表中眾多字段 本身也擁有很多屬性需要進行管理,例如字段的名字、字段的類型、字段的長度等。本設 計通過引入系統(tǒng)表來達到以表管表的目的。
對于文件的組織方式, 一個數(shù)據(jù)庫對應的所有文件將被放在一個文件夾中,文件夾命名 為數(shù)據(jù)庫的名字??偣灿袃蓮埾到y(tǒng)表數(shù)據(jù)庫系統(tǒng)表和字段集系統(tǒng)表,分別對應兩個文件"數(shù) 據(jù)庫名.DBM"和"數(shù)據(jù)庫名.FSM"。數(shù)據(jù)庫系統(tǒng)表管理當前數(shù)據(jù)庫中所有的實體集合;字段系 統(tǒng)表則管理所有實體集合中的所有字段信息。每個實體集合都有一張表(表文件)與之對應, 放在同一個文件夾下,命名為"實體集合名.DBF"。實體集合中的矢量數(shù)據(jù)還需單獨存放在名 為"實體集合名—字段名.0BJ"文件中。其中的字段名對應于實體集合表中的某個變長字段。
綜上所述,本發(fā)明具有以下有益效果
(1) 跨平臺性。該系統(tǒng)包括一個跨平臺的嵌入式GIS基礎類庫,基于其開發(fā)的應用系統(tǒng) 能夠方便地移植到多個嵌入式平臺上。
(2) 擴展性。該系統(tǒng)為分層設計,并且模塊之間的界限清晰,接口明確。在設計時特地 為用戶今后的二次開發(fā)預留了接口?;诒绢悗?,用戶可以快速高效地定制和擴展自己的嵌 入式GIS應用程序。
(3) 集成性?;诒鞠到y(tǒng),通過同一個接口,用戶的系統(tǒng)可以同時集成多種異構的GIS 數(shù)據(jù)資源,甚至可以是一個網(wǎng)絡上的SOCKET資源。
(4) 動態(tài)性。動態(tài)性主要體現(xiàn)在地圖矢量數(shù)據(jù)和屬性數(shù)據(jù)的動態(tài)獲得。 以上實施例僅用以說明而非限制本發(fā)明的技術方案。不脫離本發(fā)明精神和范圍的任何修
改或局部替換,均應涵蓋在本發(fā)明的權利要求范圍當中。
權利要求
1. 一種跨平臺嵌入式地理信息系統(tǒng),其特征在于,該系統(tǒng)包括應用程序層,用于執(zhí)行地圖的基本操作、查詢各類地理信息、路徑分析以及數(shù)據(jù)采集;及數(shù)據(jù)服務中間件層,連接所述應用程序層,包括工程管理模塊、地理數(shù)據(jù)管理模塊、顯示數(shù)據(jù)管理模塊,該數(shù)據(jù)服務中間件層用于對應用程序層屏蔽底層的實現(xiàn)細節(jié),通過地理數(shù)據(jù)管理模塊和顯示數(shù)據(jù)管理模塊向上層提供地理數(shù)據(jù)和顯示數(shù)據(jù)的存取接口;及數(shù)據(jù)引擎層,連接所述數(shù)據(jù)服務中間件層;及平臺相關模塊層,連接所述數(shù)據(jù)引擎層,將與特定操作系統(tǒng)相關的所有操作集中在一起;及基礎算法組件,連接所述數(shù)據(jù)引擎層,該基礎算法組件包含所述地理信息系統(tǒng)所需要使用的GIS算法及數(shù)據(jù)結構;及地理資源文件層,連接所述數(shù)據(jù)引擎層及平臺相關模塊層,用于提供地理資源的信息;及操作系統(tǒng)層,連接所述地理資源文件層,該操作系統(tǒng)層包括若干嵌入式平臺。
2、 根據(jù)權利要求1所述的嵌入式地理信息系統(tǒng),其特征在于所述系統(tǒng)還包括一類庫, 該類庫分別定義應用程序層、數(shù)據(jù)服務中間件層、數(shù)據(jù)引擎層、平臺相關模塊層、基 礎算法組件、地理資源文件層、操作系統(tǒng)層的相關信息。
3、 根據(jù)權利要求1所述的嵌入式地理信息系統(tǒng),其特征在于所述數(shù)據(jù)服務中間件層包 括工程管理模塊、地理數(shù)據(jù)管理模塊、顯示數(shù)據(jù)管理模塊;所述地理數(shù)據(jù)管理模塊、 顯示數(shù)據(jù)管理模塊連接工程管理模塊。
4、 根據(jù)權利要求2所述的嵌入式地理信息系統(tǒng),其特征在于所述應用程序層和數(shù)據(jù)服 務中間件層的接口是類庫中類以及類的成員變量和成員函數(shù)。
5、 根據(jù)權利要求2所述的嵌入式地理信息系統(tǒng),其特征在于所述數(shù)據(jù)服務中間件層是 整個類庫對外的主要接口 ,應用程序層通過該接口來使用整個類庫。
6、 根據(jù)權利要求1所述的嵌入式地理信息系統(tǒng),其特征在于所述數(shù)據(jù)引擎層包括數(shù)據(jù) 管理模塊、執(zhí)行引擎模塊、網(wǎng)絡數(shù)據(jù)分析引擎模塊、索引文件記錄管理模塊、緩沖管 理模塊、以及存儲管理模塊;所述數(shù)據(jù)管理模塊連接執(zhí)行引擎模塊、網(wǎng)絡數(shù)據(jù)分析引擎模塊; 所述執(zhí)行引擎模塊、網(wǎng)絡數(shù)據(jù)分析引擎模塊連接索引文件記錄管理模塊;所述執(zhí)行引擎模塊、網(wǎng)絡數(shù)據(jù)分析引擎模塊、索引文件記錄管理模塊連接緩沖管 理模塊;所述緩沖管理模塊連接存儲管理模塊。
7、 根據(jù)權利要求1所述的嵌入式地理信息系統(tǒng),其特征在于所述數(shù)據(jù)引擎層采用標準C十+進行編碼,基于MobileMap嵌入式GIS文件格式;如果底層的文件為shapefile 文件格式、tab文件格式,則將數(shù)據(jù)引擎層替換為對應于相應文件格式的數(shù)據(jù)引擎。
8、 根據(jù)權利要求1所述的嵌入式地理信息系統(tǒng),其特征在于所述平臺相關模塊層和數(shù) 據(jù)引擎層通過函數(shù)調用和數(shù)據(jù)結構使用來進行交互。
9、 根據(jù)權利要求1所述的嵌入式地理信息系統(tǒng),其特征在于所述地理數(shù)據(jù)管理模塊為 一數(shù)據(jù)倉庫,該數(shù)據(jù)倉庫包括若干數(shù)據(jù)庫,各數(shù)據(jù)庫包括若干實體集合,各實體集合 包括若干實體。
10、 根據(jù)權利要求9所述的嵌入式地理信息系統(tǒng),其特征在于所述實體集合包括簡單實體集合、復合實體集合、復雜實體集合。
全文摘要
本發(fā)明揭示了一種跨平臺嵌入式地理信息系統(tǒng),包括應用程序層、數(shù)據(jù)服務中間件層、數(shù)據(jù)引擎層、平臺相關模塊層、基礎算法組件、地理資源文件層、操作系統(tǒng)層。所述系統(tǒng)還包括一跨平臺嵌入式GIS基礎類庫,該類庫分別定義應用程序層、數(shù)據(jù)服務中間件層、數(shù)據(jù)引擎層、平臺相關模塊層、基礎算法組件、地理資源文件層、操作系統(tǒng)層的相關信息。本發(fā)明跨平臺嵌入式地理信息系統(tǒng)通過使用不同的數(shù)據(jù)引擎層,可以同時集成多種異構的嵌入式GIS數(shù)據(jù)資源;同時,通過替換不同的平臺相關模塊層,本發(fā)明跨平臺嵌入式地理信息系統(tǒng)可以不經(jīng)修改直接運行在多種嵌入式操作系統(tǒng)上。
文檔編號G06F9/44GK101290573SQ20081003837
公開日2008年10月22日 申請日期2008年5月30日 優(yōu)先權日2008年5月30日
發(fā)明者鈺 方, 曾國蓀, 沈文裕, 白星振, 苗奪謙, 蔣昌俊, 閆春鋼, 陳閎中 申請人:同濟大學