下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
linux下基于q的雷達(dá)信息顯示技術(shù)
0linux下開發(fā)圖形用戶界面的常用工具雷達(dá)信息顯示接口是雷達(dá)系統(tǒng)操作員的接口。鑒于Windows下圖形用戶界面(GUI)開發(fā)的便利性,目前雷達(dá)信息顯示基本上都是在Windows操作系統(tǒng)下基于C++而開發(fā)的。但由于微軟公司對(duì)Windows源代碼的保留、軍品對(duì)保密的需求以及外貿(mào)對(duì)知識(shí)產(chǎn)權(quán)的要求,目前,開放源代碼的、免費(fèi)的、具有自主版權(quán)的Linux操作系統(tǒng)越來(lái)越受到用戶的歡迎。因此在Linux下進(jìn)行雷達(dá)信息顯示界面開發(fā)不僅是一種時(shí)尚,更是一種技術(shù)發(fā)展的需求。Linux下開發(fā)圖形用戶界面的主流工具主要有:GTK+,Kdevelop,Kylix以及Qt等。Qt由于自身的優(yōu)勢(shì)和特點(diǎn),特別是Nokia對(duì)于Qt新版本的支持,使得Qt成為L(zhǎng)inux下開發(fā)圖形用戶界面的常用工具。Qt是Trolltech公司的標(biāo)志性產(chǎn)品,是Linux操作系統(tǒng)流行的KDE桌面環(huán)境的基礎(chǔ),具有如下特點(diǎn):Qt是面向?qū)ο蟮腃++開發(fā)包;具有signal-slot連接的事件驅(qū)動(dòng)機(jī)制;Qt是一種源代碼級(jí)跨平臺(tái)的開發(fā)工具,一次編寫,隨處編譯;Qt便于程序開發(fā),提供QtDesigner工具開發(fā)界面。雷達(dá)信息顯示一般包括點(diǎn)跡、航跡、雷達(dá)視頻、矢量圖形、背景地圖、操作界面等信息。對(duì)于雷達(dá)視頻顯示,一般不采用軟件方式繪制,而借助于硬件手段實(shí)現(xiàn)。若確需采用軟件方式繪制,要達(dá)到實(shí)時(shí)顯示的效果,則對(duì)硬件平臺(tái)的性能有一定的要求,通常采用幀緩沖(FrameBuffer)的方法將視頻直接寫入顯示內(nèi)存。在本文中不考慮雷達(dá)視頻顯示。對(duì)于點(diǎn)跡、航跡等實(shí)時(shí)更新的信息顯示,采用Qt圖形化視圖框架中GraphicsView/Item機(jī)制進(jìn)行處理并將其繪制在圖元層,而對(duì)于矢量圖形、背景地圖等無(wú)需頻繁更新的信息,可以將其繪制在背景層或前景層。對(duì)于操作界面,可以利用QtDesigner進(jìn)行設(shè)計(jì)并借助于stylesheet對(duì)其美化。1qt顯示基本原則1.1圖形化顯示平臺(tái)圖形化視圖框架包含視圖、場(chǎng)景和圖元三個(gè)組成部分。視圖為用戶定制的二維圖元進(jìn)行管理與交互提供一個(gè)平臺(tái),同時(shí)為圖元的可視化提供視圖窗口。場(chǎng)景為圖元提供顯示平臺(tái)。圖元是圖形顯示的單元,可以將基本圖形如線、矩形、圓周等作為一個(gè)圖元,也可以將多個(gè)基本圖形組合成一個(gè)復(fù)雜圖形作為一個(gè)圖元。圖形化視圖框架采用事件傳遞機(jī)制從而可以與場(chǎng)景中的圖元進(jìn)行雙浮點(diǎn)精度的交互。圖形化視圖采用二元空間分割(BSP)樹方式提供圖元快速搜索,因此可以使包含高達(dá)上百萬(wàn)個(gè)圖元的大場(chǎng)景能夠?qū)崟r(shí)可視化。圖形化視圖提供一種基于圖元的方式進(jìn)行模型/視圖編程。在設(shè)計(jì)中可以采用多個(gè)視圖對(duì)同一個(gè)場(chǎng)景進(jìn)行不同角度的觀測(cè)。1.1.1不變形渲染功能場(chǎng)景類QGraphicsScene提供圖形化視圖框架的場(chǎng)景。場(chǎng)景具備如下功能:提供管理大量圖元的快速接口;傳遞事件到每個(gè)圖元;管理圖元狀態(tài),包括選擇狀態(tài)和焦點(diǎn)狀態(tài);提供不變形渲染功能。場(chǎng)景充當(dāng)QGraphicsItem對(duì)象的容器,可以通過(guò)調(diào)用QGraphicsScene::addItem()函數(shù)將圖元添加至場(chǎng)景中。QGraphicsScene::items()和其重載函數(shù)可以獲取鼠標(biāo)選擇范圍內(nèi)的圖元。QGraphicsScene的事件傳遞機(jī)制編排場(chǎng)景事件傳遞到相應(yīng)圖元,并管理圖元之間的事件傳遞。若在場(chǎng)景某位置捕獲到鼠標(biāo)按下事件,場(chǎng)景將該事件傳遞給該位置的圖元。1.1.2多視角顯示視圖類QGraphicsView為場(chǎng)景中內(nèi)容的可視化提供窗口,可以將多個(gè)視圖關(guān)聯(lián)到同一個(gè)場(chǎng)景,從而為同一個(gè)數(shù)據(jù)集提供多視角顯示。視圖為一個(gè)可滾動(dòng)區(qū)域,在大場(chǎng)景導(dǎo)航時(shí)提供滾動(dòng)條。為獲取OpenGL支持,可以通過(guò)調(diào)用QGraphicsView::setViewport()將QGLWidget作為場(chǎng)景視圖。視圖捕獲鍵盤輸入、鼠標(biāo)事件并在該事件發(fā)送到場(chǎng)景前將其轉(zhuǎn)換為場(chǎng)景事件。1.1.3qg5.1qg改圖元類QGraphicsItem是場(chǎng)景中所有圖元類的基類。圖形化視圖框架提供幾類基本形狀的標(biāo)準(zhǔn)圖元類,如矩形圖元類(QGraphicsRectItem),橢圓圖元類(QGraphicsEllipseItem)和文本圖元類(QGraphicsTextItem)。若需有效利用QGraphicsItem圖元類的特點(diǎn),則用戶需要定制圖元以實(shí)現(xiàn)其功能特點(diǎn)。QGraphicsItem具有如下特征:支持鼠標(biāo)按下、移動(dòng)、釋放、雙擊事件以及鼠標(biāo)滑動(dòng)、滾動(dòng)和上下文菜單事件;支持鍵盤輸入焦點(diǎn)和按鍵事件;支持拖放事件;支持組合功能,包括圖元父子關(guān)系或采用QGraphicsItemGroup類;支持碰撞檢測(cè)。1.2前景層qghashcs場(chǎng)景層分為圖元層、前景層和背景層。圖元層顯示場(chǎng)景中所有圖元,QGraphicsScene通過(guò)調(diào)用drawItems()函數(shù)將所有圖元繪制于該層,該層在前景層之前背景層之后繪制。前景層顯示場(chǎng)景中前景,QGraphicsScene通過(guò)調(diào)用drawForeground()函數(shù)將場(chǎng)景的前景繪制于該層,該層在所有圖層中最后繪制。背景層顯示場(chǎng)景背景信息,QGraphicsScene通過(guò)調(diào)用drawBackground()函數(shù)將場(chǎng)景的背景繪制于該層,該層在所有圖層中最先繪制。在實(shí)際設(shè)計(jì)中,為節(jié)約系統(tǒng)資源,將頻繁變化并需要實(shí)時(shí)更新的信息與固定或者不經(jīng)常改變的信息分層顯示。如將頻繁變化并需要實(shí)時(shí)更新的信息作為圖元處理并繪制于圖元層,而將固定或者不經(jīng)常改變的信息繪制于前景層或背景層。1.3生成環(huán)境文件QtDesigner是Trolltech公司為構(gòu)建圖形用戶界面(GUI)而提供的一個(gè)工具。它允許用戶在屏幕表格上設(shè)計(jì)并構(gòu)造窗口和對(duì)話框。由QtDesigner設(shè)計(jì)的對(duì)話框可以使用Qt的signal-slot機(jī)制并提供預(yù)覽功能。用QtDesigner設(shè)計(jì)的界面通常保存為擴(kuò)展名.ui的文件。若需要在C++程序中使用*.ui文件,則需要通過(guò)調(diào)用uic(userinterfacecompiler)將*.ui文件轉(zhuǎn)換為C++程序可用的頭文件。若采用qmake命令編譯程序工程文件,則自動(dòng)調(diào)用uic生成頭文件。在使用QtDesigner設(shè)計(jì)GUI時(shí),可以使用樣式表定制窗口或控件的外觀。2圖元層和背景層雷達(dá)信息顯示主要考慮點(diǎn)跡、航跡、矢量圖形、背景地圖以及操作界面等信息顯示。對(duì)于點(diǎn)跡、航跡,由于其信息實(shí)時(shí)更新,因此作為圖元繪制在圖元層;而對(duì)于矢量圖形和背景地圖等不經(jīng)常改變的信息,繪制于前景層或背景層。同時(shí)為節(jié)約系統(tǒng)資源,一般需將視圖類QGraphicsView的成員變量ViewportUpdateMode設(shè)置為SmartViewportUpdate,即只更新視圖需要重繪的區(qū)域。2.1定制點(diǎn)跡操作對(duì)于點(diǎn)跡顯示,從基類QGraphicsItem中派生一個(gè)用戶定制的圖元類QGraphicsPlotItem表示雷達(dá)點(diǎn)跡對(duì)象。用QGraphicsPlotItem成員變量表征點(diǎn)跡屬性,用QGraphicsPlotItem成員函數(shù)定制點(diǎn)跡操作。每個(gè)點(diǎn)跡用一個(gè)QGraphicsPlotItem對(duì)象來(lái)表示,然后建立一個(gè)點(diǎn)跡鏈Q(jìng)PlotLink保存所有點(diǎn)跡信息。當(dāng)收到一個(gè)新點(diǎn)跡時(shí),在點(diǎn)跡鏈Q(jìng)PlotLink前插入一個(gè)QGraphicsPlotItem對(duì)象表示該點(diǎn)跡,并調(diào)用setPos()函數(shù)設(shè)置其場(chǎng)景位置,然后調(diào)用addItem()函數(shù)將QGraphicsPlotItem對(duì)象添加到場(chǎng)景中并在視圖顯示。若點(diǎn)跡小時(shí),此時(shí)需要將QPlotLink鏈表中最后一個(gè)單元?jiǎng)h除,并調(diào)用QGraphicsScene的函數(shù)removeItem()將該對(duì)象從場(chǎng)景中移除。2.2航跡歷史點(diǎn)與航跡指引線航跡顯示包括航跡當(dāng)前點(diǎn)、歷史點(diǎn)、標(biāo)牌和指引線的顯示。對(duì)于航跡當(dāng)前點(diǎn),從基類QGraphicsItem中派生一個(gè)用戶定制的圖元類QGraphicsTrackItem表示。用QGraphicsPlotItem成員變量表征航跡參數(shù),設(shè)計(jì)QGraphicsTrackItem成員函數(shù)定制對(duì)航跡的操作。同時(shí)從QGraphicsItem中派生一個(gè)用戶定制的圖元類QGraphicsHtTrackItem來(lái)表示航跡歷史點(diǎn),從QGraphicsTextItem中派生一個(gè)用戶定制的圖元類QGraphicsLabelItem表示航跡標(biāo)牌,從QGraphicsLineItem中派生一個(gè)用戶定制的圖元類QGraphicsDirLineItem來(lái)表示航跡指引線。由航跡歷史點(diǎn)組成的航跡歷史點(diǎn)鏈Q(jìng)HtTrackLink,以及航跡標(biāo)牌QGraphicsLabelItem,航跡指引線QGraphicsDirLineItem均作為QGraphicsTrackItem的成員變量。場(chǎng)景中每個(gè)航跡用一個(gè)QGraphicsTrackItem圖元對(duì)象來(lái)表示,然后建立一個(gè)航跡鏈Q(jìng)TrackLink保存所有航跡信息。當(dāng)產(chǎn)生一個(gè)新航跡時(shí),在航跡鏈Q(jìng)TrackLink前插入一個(gè)QGraphicsTrackItem對(duì)象來(lái)表示該航跡,并調(diào)用addItem()函數(shù)將QGraphicsTrackItem對(duì)象添加到場(chǎng)景中并在視圖顯示。若為已有航跡,則只需更新QTrackLink中相應(yīng)圖元對(duì)象的參數(shù)。若航跡消失,則需將QTrackLink中相應(yīng)單元?jiǎng)h除,同時(shí)調(diào)用QGraphicsScene的removeItem()函數(shù)將該對(duì)象從場(chǎng)景中移除。在航跡顯示時(shí)需要注意航跡參數(shù)更新時(shí)航跡當(dāng)前點(diǎn)與歷史點(diǎn)參數(shù)的交換。2.3基于背景信息的信息2.3.1繪制復(fù)雜圖形在雷達(dá)信息顯示中,常需繪制刻度線輔助目標(biāo)測(cè)量,如距離刻度線、方位刻度線,有時(shí)也需繪制具有特定功能的區(qū)域,如航跡起始區(qū)、上報(bào)區(qū)、干擾區(qū)等。Qt提供底層的繪圖類QPainter,該類既可以繪制簡(jiǎn)單的直線,也可以繪制復(fù)雜的圖形。如提供drawLine()函數(shù)繪制直線,drawPie()繪制扇形,drawText()繪制文本,drawPath()繪制復(fù)雜圖形。對(duì)于距離刻度線,通過(guò)調(diào)用drawLine()即可實(shí)現(xiàn),對(duì)于方位刻度線,在P顯時(shí)可以調(diào)用drawEllipse()函數(shù)繪制圓形。對(duì)于航跡起始區(qū)、干擾區(qū)等用戶繪制圖形,簡(jiǎn)單規(guī)則圖形可以調(diào)用QPainter標(biāo)準(zhǔn)繪制函數(shù),復(fù)雜圖形先構(gòu)造QPainterPath對(duì)象后調(diào)用drawPath()函數(shù)實(shí)現(xiàn)。矢量圖形既可以繪制在前景層,也可以繪制在背景層。2.3.2ggad/ogr及g背景地圖顯示關(guān)鍵在于地圖數(shù)據(jù)的解譯。如果掌握一個(gè)地圖數(shù)據(jù)文件的格式,可以通過(guò)將地圖數(shù)據(jù)轉(zhuǎn)換成為由直線、折線、地標(biāo)、文本等基本元素組成的鏈表,然后采用動(dòng)態(tài)加載、分層顯示的方式,通過(guò)如2.3.1節(jié)所 述的繪制方式繪制并顯示背景地圖。GDAL/OGR庫(kù)是開源GIS領(lǐng)域最為著名的代碼庫(kù)之一,以強(qiáng)大的數(shù)據(jù)格式支持和處理能力著稱,并對(duì)于其所支持的各類數(shù)據(jù)格式提供一個(gè)統(tǒng)一的數(shù)據(jù)抽象模型作為編程接口。OGR提供對(duì)矢量數(shù)據(jù)格式的讀寫支持,所支持文件格式包括ESRIShapefiles,S-57,Mapinfomid/mif以及MapinfoTAB等。文獻(xiàn)研究了采用GDAL/OGR庫(kù)進(jìn)行雷達(dá)終端顯示系統(tǒng)圖形開發(fā)的方法。2.4息
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 專用設(shè)備基礎(chǔ)知識(shí)考核試卷
- 2025年度主題餐廳合作經(jīng)營(yíng)合同書
- 2025年度特殊工種解除勞動(dòng)合同協(xié)議書范本
- 2025年度餐飲服務(wù)與供應(yīng)鏈管理合同
- 寵物心臟疾病介入治療技術(shù)考核試卷
- 印刷油墨研發(fā)考核試卷
- 2025年全球及中國(guó)斗式橋梁檢查車行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 財(cái)務(wù)課程設(shè)計(jì)企業(yè)
- 麻疹課程設(shè)計(jì)方案
- 非遺課程設(shè)計(jì)蒸花饃
- 2025寒假散學(xué)典禮(休業(yè)式)上校長(zhǎng)精彩講話:以董宇輝的創(chuàng)新、羅振宇的堅(jiān)持、馬龍的熱愛(ài)啟迪未來(lái)
- 安徽省示范高中2024-2025學(xué)年高一(上)期末綜合測(cè)試物理試卷(含答案)
- 安徽省合肥市包河區(qū)2023-2024學(xué)年九年級(jí)上學(xué)期期末化學(xué)試題
- 《酸堿罐區(qū)設(shè)計(jì)規(guī)范》編制說(shuō)明
- PMC主管年終總結(jié)報(bào)告
- 售樓部保安管理培訓(xùn)
- 倉(cāng)儲(chǔ)培訓(xùn)課件模板
- 2025屆高考地理一輪復(fù)習(xí)第七講水循環(huán)與洋流自主練含解析
- GB/T 44914-2024和田玉分級(jí)
- 2024年度企業(yè)入駐跨境電商孵化基地合作協(xié)議3篇
- 《形勢(shì)與政策》課程標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論