複製鏈接
請複製以下鏈接發送給好友

組件式GIS

鎖定
組件式軟件技術已經成為當今軟件技術的潮流之一,為了適應這種技術潮流,GIS軟件像其他軟件一樣,已經或正在發生着革命性的變化,即由過去廠家提供了全部系統或者具有二次開發功能的軟件,過渡到提供組件由用户自己再開發的方向上來。無疑,組件式GIS技術將給整個GIS技術體系和應用模式帶來巨大影響。
中文名
組件式GIS
簡    介
當今軟件技術的潮流之一
基本思想
劃分為幾個控件
基本特點
把GIS的功能適當抽象

組件式GIS簡介

GIS技術的發展,在軟件模式上經歷了功能模塊、包式軟件、核心式軟件,從而發展到組件式GIS和WebGIS的過程。傳統GIS雖然在功能上已經比較成熟,但是由於這些系統多是基於十多年前的軟件技術開發的,屬於獨立封閉的系統。同時,GIS軟件變得日益龐大,用户難以掌握,費用昂貴,阻礙了GIS的普及和應用。組件式GIS的出現為傳統GIS面臨的多種問題提供了全新的解決思路。

組件式GIS基本思想

組件式GIS的基本思想是把GIS的各大功能模塊劃分為幾個控件,每個控件完成不同的功能。各個GIS控件之間,以及GIS控件與其它非GIS控件之間,可以方便地通過可視化的軟件開發工具集成起來,形成最終的GIS應用。控件如同一堆各式各樣的積木,他們分別實現不同的功能(包括GIS和非GIS功能),根據需要把實現各種功能的 “積木”搭建起來,就構成應用系統。

組件式GIS基本特點

把GIS的功能適當抽象,以組件形式供開發者使用,將會帶來許多傳統GIS工具無法比擬的優點。
小巧靈活、價格便宜
由於傳統GIS結構的封閉性,往往使得軟件本身變得越來越龐大,不同系統的交互性差,系統的開發難度大。在組件模型下,各組件都集中地實現與自己最緊密相關的系統功能,用户可以根據實際需要選擇所需控件,最大限度地降低了用户的經濟負擔。組件化的GIS平台集中提供空間數據管理能力,並且能以靈活的方式與數據庫系統連接。在保證功能的前提下,系統表現得小巧靈活,而其價格僅是傳統GIS開發工具的十分之一,甚至更少。這樣,用户便能以較好的性能價格比獲得或開發GIS應用系統。
無須專門GIS開發語言
傳統GIS往往具有獨立的二次開發語言,對用户和應用開發者而言存在學習上的負擔。而且使用系統所提供的二次開發語言,開發往往受到限制,難以處理複雜問題。而組件式GIS建立在嚴格的標準之上,不需要額外的GIS二次開發語言,只需實現GIS的基本功能函數,按照Microsoft的ActiveX控件標準開發接口。這有利於減輕GIS軟件開發者的負擔,而且增強了GIS軟件的可擴展性。GIS應用開發者,不必掌握額外的GIS開發語言,只需熟悉基於Windows平台的通用集成開發環境,以及GIS各個控件的屬性、方法和事件,就可以完成應用系統的開發和集成。可供選擇的開發環境很多,如Visual C++、Visual Basic、Visual FoxPro、Borland C++、Delphi、C++ Builder以及Power Builder等都可直接成為GIS或GMIS的優秀開發工具,它們各自的優點都能夠得到充分發揮。這與傳統GIS專門性開發環境相比,是一種質的飛躍。
強大的GIS功能
新的GIS組件都是基於32位系統平台的,採用InProc直接調用形式,所以無論是管理大數據的能力還是處理速度方面均不比傳統GIS軟件遜色。小小的GIS組件完全能提供拼接、裁剪、疊合、緩衝區等空間處理能力和豐富的空間查詢與分析能力。
開發簡捷
由於GIS組件可以直接嵌入MIS開發工具中,對於廣大開發人員來講,就可以自由選用他們熟悉的開發工具。而且,GIS組件提供的API形式非常接近MIS工具的模式,開發人員可以像管理數據庫表一樣熟練地管理地圖等空間數據,無須對開發人員進行特殊的培訓。在GIS或GMIS的開發過程中,開發人員的素質與熟練程度是十分重要的因素。這將使大量的MIS開發人員能夠較快地過渡到GIS或GMIS的開發工作中,從而大大加速GIS的發展。
更加大眾化
組件式技術已經成為業界標準,用户可以象使用其他ActiveX控件一樣使用GIS控件,使非專業的普通用户也能夠開發和集成GIS應用系統,推動了GIS大眾化進程。組件式GIS 的出現使GIS不僅是專家們的專業分析工具,同時也成為普通用户對地理相關數據進行管理的的可視化工具。

組件式GIS開發平台的結構

組件式GIS開發平台通常可設計為三級結構:

組件式GIS基礎組件

面向空間數據管理,提供基本的交互過程,並能以靈活的方式與數據庫系統連接;

組件式GIS高級組件

由基礎組件構造而成,面向通用功能,簡化用户開發過程,如顯示工具組件、選擇工具組件、編輯工具組件、屬性瀏覽器組件等等。它們之間的協同控制消息都被封裝起來。這級組件經過封裝後,使二次開發更為簡單。如一個編輯查詢系統,若用基礎平台開發,需要編寫大量的代碼,而利用高級通用組件,只需幾句程序就夠了。面向通用功能;

組件式GIS行業組件

抽象出行業應用的特定算法,固化到組件中,進一步加速開發過程。以GPS監控為例。對於GPS應用,除了需要地圖顯示、信息查詢等一般的GIS功能外,還需要特定的應用功能,如動態目標顯示、目標鎖定、軌跡顯示等。這些GPS行業性應用功能組件被封裝起來後,開發者的工作就可簡化為設置顯示目標的圖例、軌跡顯示的顏色、鎖定的目標,以及調用、接受數據的方法等。

組件式GIS構成

GIS軟件的模型包含若干功能單元,諸如空間數據獲取、座標轉換、圖形編輯、數據存儲、數據查詢、數據分析、製圖表示等。可以想象要把這些所有的功能放在一個控件中幾乎是不可能的,即使實現也會帶來系統效率上的低下。一般可以認為GIS構件的設計主要遵循應用領域地需求。

組件式GIS產品

GIS組件和組件式GIS是有區別的兩個概念,GIS組件指實現GIS某部分功能的軟件組件,而組件式GIS是指由一系列各自完成不同功能的GIS組件羣構成的一個整體,這些組件既可以集成在一起使用,更能拆開使用。
有時我們也把初級的只有一個控件的組件式GIS稱為GIS組件,如MapObjects和MapX就是20世紀九十年到中後期推出的最著名的GIS組件產品,其中MapObjects由ESRI推出,MapX由MapInfo公司推出。這兩個產品的共同特點都是隻包含GIS的基本功能,屬於入門級組件式GIS產品。
2000年前後,ESRI推出的ArcObjects和超圖推出的SuperMapObjects把組件式GIS平台發展到一個新的階段,龐大的GIS組件羣包含了從數據管理、格式轉換、地圖編輯、排版製圖、網絡分析、疊加分析、緩衝區分析柵格分析、二維可視化、三維可視化等GIS的幾乎全部功能,並引領了此後將近十年的GIS二次開發方式。