總線的軟件設(shè)計(jì)綜述_第1頁
總線的軟件設(shè)計(jì)綜述_第2頁
總線的軟件設(shè)計(jì)綜述_第3頁
總線的軟件設(shè)計(jì)綜述_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、總線的軟件設(shè)計(jì)綜述 作者:陸宏 單位:中國電子科技集團(tuán)公司第二十八研究所 系統(tǒng)功能本文設(shè)計(jì)標(biāo)圖軟件具備以下功能:支持點(diǎn)狀、線狀、面狀等多種符號(hào)和文本的添加、刪除、修改;支持圖標(biāo)平移、旋轉(zhuǎn)和縮放;支持線寬、線色、是否填充、填充顏色等屬性設(shè)置;支持鼠標(biāo)選??;支持圖標(biāo)復(fù)制、剪切、粘貼、刪除和撤銷等;支持圖標(biāo)數(shù)據(jù)的存儲(chǔ)。系統(tǒng)結(jié)構(gòu)基于軟件總線的標(biāo)圖軟件如圖1所示,總線管理器和各個(gè)標(biāo)圖模塊采用windows系統(tǒng)中動(dòng)態(tài)連接庫(dll)方式實(shí)現(xiàn)。動(dòng)態(tài)鏈接庫是一種基于windows的程序模塊9,不僅可以包含可執(zhí)行代碼,而且還可以包括數(shù)據(jù)、各種資源。在軟件開發(fā)時(shí),利用dll技術(shù)將軟件分為一系列dll,提高了軟件的

2、復(fù)用性和可擴(kuò)展性??偩€管理器是總線的核心模塊,負(fù)責(zé)標(biāo)圖模塊加載和卸載、消息分發(fā)、數(shù)據(jù)同步、事件調(diào)度等;圖標(biāo)數(shù)據(jù)管理模塊管理圖標(biāo)對(duì)象數(shù)據(jù),包括圖標(biāo)對(duì)象的新增、刪除和屬性更改,以及圖標(biāo)對(duì)象的存儲(chǔ)和加載;圖標(biāo)算法模塊封裝了平移、旋轉(zhuǎn)和縮放等常用算法,用于計(jì)算變換后圖標(biāo)對(duì)象各個(gè)定位點(diǎn)的位置;坐標(biāo)變換算法模塊封裝了wgs84大地坐標(biāo)系與直角坐標(biāo)系、直角坐標(biāo)系與屏幕坐標(biāo)系之間的相互轉(zhuǎn)換算法;撤銷重做管理模塊對(duì)撤銷重做的動(dòng)作進(jìn)行管理;人機(jī)交互是標(biāo)圖軟件與用戶交互的窗口,提供命令編輯、圖標(biāo)繪制與顯示等功能。消息標(biāo)圖模塊之間使用消息來傳遞信息,消息的格式如(圖略)。命令標(biāo)識(shí)指示圖標(biāo)正在執(zhí)行何種命令,如添加、刪除

3、、復(fù)制等;命令參數(shù),通過界面輸入的數(shù)據(jù),如填充顏色、線寬、旋轉(zhuǎn)角度等;消息處理標(biāo)識(shí)指示消息當(dāng)前要采取何種處理,每個(gè)功能模塊對(duì)應(yīng)一個(gè)或多個(gè)處理標(biāo)識(shí),例如圖標(biāo)算法模塊有平移、旋轉(zhuǎn)、縮放三個(gè)處理標(biāo)識(shí)。圖標(biāo)對(duì)象數(shù)據(jù)描述了圖標(biāo)的類型、屬性等數(shù)據(jù),詳細(xì)說明見本文第3節(jié)。一個(gè)命令需要多個(gè)標(biāo)圖模塊按順序完成,如圖標(biāo)添加命令需要由四個(gè)不同的模塊按順序完成,。因此模塊之間的調(diào)度可以使用命令標(biāo)識(shí)和消息處理標(biāo)識(shí)來驅(qū)動(dòng)。消息處理標(biāo)識(shí)的設(shè)置由總線管理器根據(jù)命令和當(dāng)前的處理標(biāo)識(shí)來確定。信息處理流程以消息處理標(biāo)識(shí)為驅(qū)動(dòng)的信息處理流程(表略),簡要描述如下:1)模塊1將數(shù)據(jù)封裝成消息m;2)將消息m發(fā)往軟件總線;3)消息m進(jìn)入

4、總線的全局消息隊(duì)列;4)通過總線管理器的消息調(diào)度,發(fā)現(xiàn)未處理的消息m,并設(shè)置消息處理標(biāo)識(shí),將消息m發(fā)送給處理模塊2;5)模塊2接收消息m并處理。 圖標(biāo)對(duì)象 數(shù)據(jù)結(jié)構(gòu)為了便于各個(gè)標(biāo)圖模塊的處理,需對(duì)圖標(biāo)對(duì)象進(jìn)行統(tǒng)一描述。圖標(biāo),如點(diǎn)、線、矩形、橢圓、多邊形等,其屬性包括五個(gè)部分:標(biāo)識(shí)、標(biāo)注、位置、大小和其他屬性。標(biāo)識(shí)用于區(qū)分圖標(biāo)的類型;標(biāo)注描述圖標(biāo)的含義,如“威脅區(qū)”、“警戒區(qū)”、“臺(tái)風(fēng)路徑”等;位置屬性描述圖標(biāo)在地圖上的具體位置,使用經(jīng)緯度表示;范圍屬性描述圖標(biāo)的大小和方向;其他屬性描述圖標(biāo)是否填充、顏色、方向等屬性。 關(guān)鍵模塊的設(shè)計(jì) 人機(jī)交互模塊人機(jī)交互模塊分為四個(gè)子模塊,如圖4所示:菜單與工

5、具條,提供添加、刪除、拷貝、剪切、粘貼、撤銷、移動(dòng)、縮放、屬性設(shè)置等用戶編輯命令;屬性設(shè)置,提供設(shè)置對(duì)話框,以便更改圖標(biāo)標(biāo)注、大小、線寬等屬性;鼠標(biāo)事件檢測(cè),支持鼠標(biāo)左鍵單擊、右鍵單擊、移動(dòng)等事件的檢測(cè);圖標(biāo)繪制依據(jù)圖標(biāo)標(biāo)識(shí)繪制各種圖標(biāo)。人機(jī)交互模塊中的難點(diǎn)是在繪制圖標(biāo)或刷新背景地圖時(shí),經(jīng)常會(huì)產(chǎn)生嚴(yán)重的閃爍,本文采用基于內(nèi)存位圖的繪制方法加以解決。內(nèi)存位圖的原理10則是在內(nèi)存中創(chuàng)建一個(gè)設(shè)備環(huán)境對(duì)象dc,然后再創(chuàng)建一個(gè)與顯示區(qū)域相兼容的內(nèi)存位圖,并將該位圖選到創(chuàng)建的dc之中,以此作為畫板將所有圖標(biāo)以及地圖繪制在上面,然后將位圖上復(fù)制到顯示設(shè)備上。由于將位圖復(fù)制到顯示設(shè)備的速度很快,用戶根本感覺不到畫圖工作的存在,這就可以得到很好的刷新速度和畫圖效果。圖標(biāo)算法在保持圖標(biāo)基本形狀不變的情況下,用戶可以通過鼠標(biāo)和屬性設(shè)置對(duì)話框調(diào)整圖標(biāo)位置、大小、方向,通過分析,將圖標(biāo)調(diào)整分為平移、旋轉(zhuǎn)、縮放三類。圖標(biāo)變換都是以圖標(biāo)的中心點(diǎn)為中心進(jìn)行的。本文通過對(duì)二維圖形的平移、旋轉(zhuǎn)、縮放變換公式進(jìn)行了總結(jié)和歸納,設(shè)計(jì)了如式的通用二維圖形變換公式(式略) 結(jié)語 本文提出的基于軟件總線的作戰(zhàn)標(biāo)圖軟件設(shè)計(jì)方法已成功應(yīng)用于某海軍指揮自動(dòng)化軟件中,軟件界面如(圖略)。由于采用了基于

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論