国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于GIS的分布式互動(dòng)圖標(biāo)標(biāo)注及地圖顯示控制技術(shù)

2012-04-19 01:20
科技傳播 2012年15期
關(guān)鍵詞:服務(wù)端遙控器圖標(biāo)

聶 晉

廣東威創(chuàng)視訊科技股份有限公司,廣東廣州 510630

0 引言

GIS在軍隊(duì)、公安和武警等領(lǐng)域的應(yīng)用已經(jīng)非常廣泛,軍事戰(zhàn)略分析、力量部署、態(tài)勢(shì)推演等,這些領(lǐng)域的應(yīng)用,對(duì)GIS系統(tǒng)的要求不僅僅是信息的展示和發(fā)布,還有一些特殊的應(yīng)用需求,這些需求是基于GIS平臺(tái)的深入應(yīng)用,但GIS系統(tǒng)自身功能并不能滿足,所以就需要另外進(jìn)行分析設(shè)計(jì)開(kāi)發(fā)來(lái)滿足。

1 背景技術(shù)

GIS基本概念。GIS(Geography Information System,地理信息系統(tǒng))是融合計(jì)算機(jī)圖形和數(shù)據(jù)庫(kù)于一體,用來(lái)存儲(chǔ)和處理空間信息的高新技術(shù),它把地理位置和相關(guān)屬性有機(jī)地結(jié)合起來(lái),根據(jù)用戶的需要將空間信息及其屬性信息準(zhǔn)確真實(shí)、圖文并茂地輸出給用戶,滿足城市建設(shè)、企業(yè)管理、居民生活對(duì)空間信息的要求,借助其獨(dú)有的空間分析功能和可視化表達(dá)功能,進(jìn)行各種輔助決策。

2 行業(yè)應(yīng)用分析

在軍隊(duì)、武警和公安行業(yè)的業(yè)務(wù)中,很多時(shí)候需要在GIS系統(tǒng)平臺(tái)上進(jìn)行跨部門(mén),甚至跨單位聯(lián)合進(jìn)行案例分析、力量部署標(biāo)注和態(tài)勢(shì)推演標(biāo)注,所以多個(gè)協(xié)同部門(mén)都要用到同一副地圖,并在地圖上進(jìn)行分析,標(biāo)注力量投放圖標(biāo),如果使用單機(jī)的方式,必定有一個(gè)先后次序,甚至相互干擾,顯然不能滿足快速協(xié)同作戰(zhàn)的需要。

GIS分布式互動(dòng)圖標(biāo)標(biāo)注及地圖顯示控制技術(shù)解決了同一局域網(wǎng)內(nèi)多個(gè)客戶端同時(shí)對(duì)同一副地圖進(jìn)行操作,多個(gè)用戶可以同時(shí)操作標(biāo)注圖標(biāo),相互協(xié)同工作,地圖上所作更改可在各個(gè)客戶端實(shí)時(shí)同步顯示。這項(xiàng)技術(shù)滿足了例如武警、公安、部隊(duì)等行業(yè)對(duì)于軍事戰(zhàn)略分析和力量部署推演等進(jìn)行實(shí)時(shí)信息交流和互動(dòng)操作的需要,與行業(yè)業(yè)務(wù)結(jié)合更緊密,可有力推進(jìn)這些行業(yè)的信息化、數(shù)字化。

3 方案設(shè)計(jì)及實(shí)現(xiàn)

3.1 軟件解決方案

基于客戶端(Client)/服務(wù)端(Server)架構(gòu)是目前常用成熟的軟件結(jié)構(gòu)解決方案。她的特點(diǎn)是能充分發(fā)揮客戶端PC的處理能力,客戶端響應(yīng)速度快,各客戶端的操作和數(shù)據(jù)可以通過(guò)服務(wù)端實(shí)時(shí)轉(zhuǎn)發(fā)到所有客戶端,保持信息和操作的同步性和實(shí)時(shí)性,見(jiàn)圖1。

圖1 系統(tǒng)結(jié)構(gòu)

系統(tǒng)由以下模塊組成:

1)數(shù)據(jù)庫(kù),用于存放GIS地圖數(shù)據(jù)和業(yè)務(wù)數(shù)據(jù),可采用MS SQL Server等支持多用戶并發(fā)訪問(wèn)的數(shù)據(jù)庫(kù),使用GIS平臺(tái)軟件,將GIS地圖數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫(kù)中作為電子地圖數(shù)據(jù)源,數(shù)據(jù)庫(kù)可安裝在單獨(dú)的一臺(tái)數(shù)據(jù)庫(kù)服務(wù)器上以提升性能;

2)服務(wù)端軟件,用于運(yùn)行服務(wù)端軟件,服務(wù)端軟件用于消息轉(zhuǎn)發(fā),同步所有客戶端的數(shù)據(jù)和操作信息,服務(wù)端軟件可安裝在單獨(dú)的一臺(tái)機(jī)器上以提升性能;

3)客戶端,實(shí)現(xiàn)對(duì)GIS地圖的操作功能,采用GIS地圖控件訪問(wèn)地圖數(shù)據(jù)庫(kù),將地圖數(shù)據(jù)下載到客戶端并顯示,客戶端的數(shù)據(jù)和操作通過(guò)TCP/IP通訊協(xié)議傳送給服務(wù)端軟件,服務(wù)端軟件將其轉(zhuǎn)發(fā)到其余客戶端,客戶端需要同步的數(shù)據(jù)和操作有:

(1)電子地圖的任意移動(dòng)和縮放操作;

(2)同步地圖比例尺;

(3)同步所有圖標(biāo)標(biāo)注信息,以及對(duì)圖標(biāo)的操作信息;

4)無(wú)線通信模塊,用于使用遙控器控制地圖的操作,如控制地圖的上下左右移動(dòng),控制地圖的放大縮小,方便快捷。

3.2 軟件執(zhí)行方法步驟

1)地圖數(shù)據(jù)準(zhǔn)備

使用GIS平臺(tái)工具,將電子地圖導(dǎo)入到數(shù)據(jù)庫(kù)中,并增加一個(gè)復(fù)合圖層,作為標(biāo)圖、繪圖圖層,并且設(shè)置成可編輯狀態(tài)。系統(tǒng)運(yùn)行時(shí)必須保證數(shù)據(jù)庫(kù)正常,并且與數(shù)據(jù)庫(kù)服務(wù)器的網(wǎng)絡(luò)通訊正常。請(qǐng)參考圖2。

2)服務(wù)端啟動(dòng)

服務(wù)端可設(shè)置成系統(tǒng)啟動(dòng)時(shí)自動(dòng)啟動(dòng),服務(wù)端程序啟動(dòng)后自動(dòng)開(kāi)始監(jiān)聽(tīng)客戶端的連接,每接受一個(gè)客戶端的連接服務(wù)端都會(huì)啟動(dòng)一個(gè)處理線程,服務(wù)端可接受的客戶端數(shù)量理論上沒(méi)有限制。服務(wù)端通過(guò)心跳檢測(cè)功能檢測(cè)客戶端的連接,如果檢測(cè)到客戶端的連接中斷,服務(wù)端就會(huì)自動(dòng)退出該處理線程并釋放相關(guān)資源。

圖2 軟件執(zhí)行步驟

3)客戶端使用操作步驟

客戶端啟動(dòng)。向數(shù)據(jù)庫(kù)服務(wù)器請(qǐng)求地圖數(shù)據(jù),將地圖數(shù)據(jù)下載到客戶端軟件的GIS地圖控件中并顯示,其余客戶端采用同樣的操作將同一副地圖顯示出來(lái)。

客戶端同步標(biāo)注圖標(biāo)。用戶將圖標(biāo)標(biāo)注在地圖上指定位置,此時(shí)觸發(fā)GIS地圖控件將標(biāo)注的圖標(biāo)數(shù)據(jù)保存到數(shù)據(jù)庫(kù),同時(shí)觸發(fā)同步通訊,將圖標(biāo)標(biāo)注指令碼、圖標(biāo)的唯一ID號(hào)及位置參數(shù)打包并發(fā)送給服務(wù)端軟件,服務(wù)端軟件接收數(shù)據(jù)包,立即轉(zhuǎn)發(fā)給已連接的其他所有客戶端,客戶端取得服務(wù)端傳送數(shù)據(jù)包,將數(shù)據(jù)解析出來(lái),依據(jù)指令碼觸發(fā)GIS地圖控件在自己的地圖上相同的位置標(biāo)注出相同的圖標(biāo)。

其余圖標(biāo)操作過(guò)程。圖標(biāo)的移動(dòng)、縮放、旋轉(zhuǎn)、拷貝、刪除、增加文字標(biāo)注等原理與圖標(biāo)標(biāo)注基本相同,只是指令碼及傳送的參數(shù)有所區(qū)別;

電子地圖自身的操作。地圖的縮放、移動(dòng)、同步比例尺等也采用同樣的工作原理,達(dá)到所有客戶端操作和顯示實(shí)時(shí)同步。

客戶端遙控器操作。使用遙控器操作客戶端地圖,例如地圖的縮放,移動(dòng),如果客戶端設(shè)置成主控的話,那么遙控器就可以同時(shí)控制其他所有客戶端地圖的移動(dòng)和縮放。

3.3 系統(tǒng)功能

1)圖標(biāo)在地圖上自由標(biāo)注,包括圖標(biāo)、幾何圖形等;

2)圖標(biāo)的移動(dòng)、等比例縮放、旋轉(zhuǎn)、閃爍、拷貝、粘貼、修改、刪除操作;

3)在圖標(biāo)上添加描述文字,設(shè)置圖標(biāo)的顏色屬性;

4)各客戶端地圖可主動(dòng)與地圖比例尺提供端進(jìn)行比例尺同步;

5)主控客戶端可控制其余客戶端地圖的移動(dòng)縮放;

6)各客戶端實(shí)時(shí)保存GIS地圖上標(biāo)注對(duì)象;

7)各客戶端地圖上所有標(biāo)注對(duì)象顯示同步;

8)各客戶端使用鳥(niǎo)瞰圖以實(shí)現(xiàn)快速定位;

9)各客戶端的地圖基本操作使用遙控器實(shí)現(xiàn),例如移動(dòng)、縮放。

3.4 軟件詳細(xì)設(shè)計(jì)

軟件的工作原理就是基于GIS平臺(tái)的采用C/S架構(gòu)實(shí)現(xiàn)多個(gè)客戶端的操作同步。

3.4.1 客戶端設(shè)計(jì)

客戶端與數(shù)據(jù)庫(kù)的通訊交由GIS平臺(tái)處理,我們這里需要傳入連接數(shù)據(jù)庫(kù)參數(shù),包括數(shù)據(jù)庫(kù)服務(wù)器地址、地圖工作空間名稱、數(shù)據(jù)庫(kù)登錄用戶名稱和密碼,參見(jiàn)后面的客戶端參數(shù)說(shuō)明。GIS平臺(tái)控件負(fù)責(zé)將GIS地圖從數(shù)據(jù)庫(kù)中取出,并顯示出來(lái)。當(dāng)用戶在地圖上做某項(xiàng)操作,同時(shí)檢測(cè)是否要同步所有客戶端選項(xiàng)參數(shù),如果需要同步,客戶端會(huì)啟動(dòng)一個(gè)通訊線程,將需要同步的內(nèi)容組成數(shù)據(jù)包,發(fā)送到服務(wù)端。

客戶端通過(guò)與服務(wù)端建立的通訊連接,接收數(shù)據(jù)包(請(qǐng)參考下面的數(shù)據(jù)包結(jié)構(gòu)),并將數(shù)據(jù)包中的指令和數(shù)據(jù)取出,在客戶端執(zhí)行函數(shù),實(shí)現(xiàn)該操作。

客戶端參數(shù)說(shuō)明:

1)Server-服務(wù)端機(jī)器的IP地址或機(jī)器名稱;

2)Port-服務(wù)端機(jī)器的通訊端口;

3)Primary-是否設(shè)置本機(jī)為主控電腦,設(shè)置為主控的客戶端可控制其余客戶端的地圖移動(dòng)、縮放;

4)User-數(shù)據(jù)庫(kù)登錄用戶名;

5)Password-數(shù)據(jù)庫(kù)登錄密碼;

6)Scale-是否為比例尺提供端,如果是比例尺提供端,當(dāng)操作地圖縮放時(shí)會(huì)自動(dòng)廣播自己地圖比例尺數(shù)據(jù)給其余客戶端,讓其余客戶端可通過(guò)同步比例尺功能與該客戶端地圖比例尺保持同步。

服務(wù)端軟件轉(zhuǎn)發(fā)同步信息數(shù)據(jù)結(jié)構(gòu)如下:

struct GIS_MSG{ BYTE suptype ; //1放大,2縮小,3漫游,4刪除對(duì)象或增加對(duì)象,5設(shè)置中心點(diǎn),6提供比例尺,7放大+提供比例尺,8縮小+提供比例尺,9漫游+提供比例尺,10刪除對(duì)象或增加對(duì)象+提供比例尺,11 設(shè)置中心點(diǎn)+提供比例尺,12追加跟蹤對(duì)象,13 刪除跟蹤對(duì)象,14 通知客戶端改變地圖

double param1;//漫游x軸偏移量

double param2;//漫游y軸偏移

double param3;//提供顯示比例尺}

3.4.2 服務(wù)端設(shè)計(jì)

服務(wù)端啟動(dòng)的時(shí)候會(huì)同時(shí)啟動(dòng)一個(gè)監(jiān)聽(tīng)線程,如果有客戶端連接,服務(wù)端會(huì)將這個(gè)連接交給一個(gè)新的客戶端處理線程繼續(xù)進(jìn)行處理,監(jiān)聽(tīng)線程依然可以監(jiān)聽(tīng)其他客戶端的連接。服務(wù)端與客戶端的連接過(guò)程會(huì)主動(dòng)檢測(cè)通訊連接是否正常,采用了一種發(fā)送心跳包的方式,定期發(fā)送心跳檢測(cè),如果不能接受客戶端的心跳檢測(cè)回應(yīng),那么服務(wù)端就會(huì)關(guān)閉與該客戶端的通訊連接,并將該客戶端的處理線程關(guān)閉。

服務(wù)端執(zhí)行的是通訊透明傳輸,對(duì)客戶端發(fā)送的請(qǐng)求數(shù)據(jù)包不做任何處理,立即搜尋客戶端連接列表,并將這個(gè)數(shù)據(jù)包轉(zhuǎn)發(fā)給連接列表中的每個(gè)客戶端。

3.4.3 遙控器控制設(shè)計(jì)

在各客戶端軟件啟動(dòng)時(shí)都會(huì)監(jiān)聽(tīng)預(yù)定的串口,如果串口中有操作指令進(jìn)來(lái),就會(huì)呼叫并執(zhí)行如手工操作電子地圖的執(zhí)行函數(shù)。

這里采用的遙控器是現(xiàn)成的產(chǎn)品,采用無(wú)線方式,采用公用頻段,操作指令相對(duì)簡(jiǎn)單,遙控器上的按鍵發(fā)送的碼與客戶端軟件的函數(shù)對(duì)應(yīng)起來(lái),實(shí)現(xiàn)不同的操作功能。

3.5 工作環(huán)境需求

硬件環(huán)境推薦配置:CPU 2GHz以上,內(nèi)存2GB以上,硬盤(pán)120GB以上。

軟件環(huán)境:WindowsXP、Windows2000Server(數(shù)據(jù)庫(kù)服務(wù)器OS),SQL Server 2000(或其他支持多用戶并發(fā)訪問(wèn)的數(shù)據(jù)庫(kù)),GIS平臺(tái)。

4 結(jié)論

GIS分布式互動(dòng)圖標(biāo)標(biāo)注及地圖顯示控制技術(shù),使各個(gè)客戶端的數(shù)據(jù)信息以及操作實(shí)時(shí)同步,這種技術(shù)很好解決了多個(gè)客戶端協(xié)同操作,數(shù)據(jù)信息實(shí)時(shí)共享,在軍隊(duì)、武警和公安等的相關(guān)業(yè)務(wù)中采取這項(xiàng)技術(shù)具有明顯的優(yōu)勢(shì),并且這種技術(shù)是GIS應(yīng)用技術(shù)拓展的明顯趨勢(shì)之一??梢钥吹绞褂眠@項(xiàng)技術(shù)的客戶群將比較廣泛,在這些行業(yè)中目前正在推進(jìn)業(yè)務(wù)的數(shù)字化和信息化,我們的技術(shù)順應(yīng)了用戶的應(yīng)用趨勢(shì),如果能在這些行業(yè)中推廣開(kāi)來(lái)無(wú)疑可以帶來(lái)持久的效益。

[1]侯俊杰.深入淺出MFC[M].2版.華中科技大學(xué)出版社,2001.

[2][美]科默.用TCP/IP進(jìn)行網(wǎng)際互聯(lián)第一卷:原理、協(xié)議與結(jié)構(gòu)[M].4版.電子工業(yè)出版社,2004.

猜你喜歡
服務(wù)端遙控器圖標(biāo)
我是“糊涂蟲(chóng)”
時(shí)間遙控器
爸媽有個(gè)“遙控器”
Android手機(jī)上那些好看的第三方圖標(biāo)包
行走的飛行遙控器
Android手機(jī)上那些好看的第三方圖標(biāo)包
云存儲(chǔ)中基于相似性的客戶-服務(wù)端雙端數(shù)據(jù)去重方法
新時(shí)期《移動(dòng)Web服務(wù)端開(kāi)發(fā)》課程教學(xué)改革的研究
在Windows Server 2008上創(chuàng)建應(yīng)用
中國(guó)風(fēng)圖標(biāo)設(shè)計(jì)