• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    電子海圖通信態(tài)勢軟件設(shè)計與實現(xiàn)*

    2016-09-09 09:21:30尤方圓劉詩俊
    艦船電子工程 2016年8期
    關(guān)鍵詞:海圖標識符控件

    尤方圓 劉詩俊 楊 巍

    (中國船舶重工集團公司第七二二研究所 武漢 430205)

    YOU Fangyuan LIU Shijun YANG Wei

    (The 722th Research Institute of China Shipbuilding Industry Corporation, Wuhan 430205)

    ?

    電子海圖通信態(tài)勢軟件設(shè)計與實現(xiàn)*

    尤方圓劉詩俊楊巍

    (中國船舶重工集團公司第七二二研究所武漢430205)

    論文主要介紹了電子海圖顯示信息系統(tǒng)設(shè)計與實現(xiàn)中的關(guān)鍵技術(shù)。分析介紹電子海圖IHO S-57標準與IHO S-52標準的數(shù)據(jù)結(jié)構(gòu)模型。在該基礎(chǔ)上設(shè)計實現(xiàn)電子海圖通信態(tài)勢軟件,著重論述電子海圖S-52標準的實現(xiàn),電子地圖縮放,漫游相關(guān)功能的實現(xiàn),通信態(tài)勢自定義標識符的繪制,經(jīng)緯度屏幕標識符的繪制。

    S-57; S-52; 電子海圖顯示與信息系統(tǒng); 通信態(tài)勢

    YOU FangyuanLIU ShijunYANG Wei

    (The 722th Research Institute of China Shipbuilding Industry Corporation, Wuhan430205)

    Class NumberTP311

    1 引言

    電子海圖顯示與信息系統(tǒng)(Electronic Chart Display and Information System, ECDIS)是集導(dǎo)航計算、航線規(guī)化、航行告警、海圖信息顯示、船位信息、雷達信息、船舶運動參數(shù)實時計算等功能的綜合海情自動化系統(tǒng)。

    ECDIS以計算機系統(tǒng)為核心,連接GPS、雷達、測深等設(shè)備,集成電子海圖數(shù)據(jù)庫,通過不斷采集船舶位置信息,動態(tài)計算航行線路,實時反映船舶行駛狀態(tài),保障船舶的安全航行。其中計算機系統(tǒng)是核心部分,它主要負責(zé)實時導(dǎo)航計算、碰撞檢測和圖形圖像繪制計算。在ECDIS中海圖信息的存儲與顯示是相互獨立的,信息的交換存儲模型是基于S-57標準[1],顯示模型基于S-52標準。這樣為電子海圖系統(tǒng)的設(shè)計提供了極大的靈活性,使得同一數(shù)據(jù)不需任何更改即可用于滿足不同需求的顯示,訂制特定的顯示功能。

    電子海圖通信態(tài)勢軟件,在電子海圖背景上實時顯示船用通信設(shè)備的通信覆蓋區(qū)域,通信站點連通狀態(tài),通信質(zhì)量等信息,為船用通信設(shè)備管理系統(tǒng)提供更加友好的態(tài)勢監(jiān)控界面,滿足系統(tǒng)各種訂制的通信態(tài)勢顯示需求。

    2 S-57理論數(shù)據(jù)模型

    S-57(IHO Transfer Standard for Digital Hydrographic Data)標準是一個水文數(shù)據(jù)傳輸與交換的標準,其數(shù)據(jù)模型不包含用于海圖圖形化顯示的規(guī)則,只提供描述顯示世界的方法,信息的顯示獨立于其存儲模型。S-57標準最終目標是將對顯示世界的描述轉(zhuǎn)換成為可傳輸?shù)奈募?,轉(zhuǎn)換過程分為以下幾個步驟:

    圖1 S57轉(zhuǎn)換過程

    在S57標準的“模型概述”部分中,真實世界的實體是可以感知的對象,標準將對象抽象為數(shù)據(jù)模型,現(xiàn)實世界中的對象非常復(fù)雜,數(shù)據(jù)模型是對高度復(fù)雜世界的簡化和抽象。根據(jù)物標的特性,數(shù)據(jù)模型將物標定義為描述特征和空間特征的組合;物標被定義為一組可標識的信息,由特征物標和空間物標組合而成。下一步將特征物標與空間物標轉(zhuǎn)換為對應(yīng)的數(shù)據(jù)結(jié)構(gòu),一個物標(Object)對應(yīng)一個記錄(Record),物標(Object)中的屬性(Attribute)對應(yīng)于記錄(Record)中的域(Field)。轉(zhuǎn)換過程結(jié)束后,數(shù)據(jù)結(jié)構(gòu)將以ISO8211標準格式存儲在文件中,即將Record,F(xiàn)ield等數(shù)據(jù)結(jié)構(gòu)最終存儲到二進制文件中。

    數(shù)據(jù)模型中物標分為特征物標和空間物標,特征物標只包含對象的基本描述信息,不包括地理信息,空間物標包含對象的地理信息(如經(jīng)緯度、高度等信息)。

    數(shù)據(jù)結(jié)構(gòu)中最基本的單位是子域(subField),一或多個子字段組成字段;一個或多個域(Field)組成記錄(Record);一個或多個記錄構(gòu)成文件(File);一個交換集(Data Exchange Set)由一個或多個文件組成。記錄分為五種:數(shù)據(jù)集描述(Data Set Descriptive)記錄、目錄(Catalogue)記錄、數(shù)據(jù)字典(Data Dictionary)記錄、特征(Feature)記錄、空間(Spatial)記錄。S-57數(shù)據(jù)結(jié)構(gòu)實現(xiàn)上采用樹形結(jié)構(gòu)。不同記錄和字段中的信息由專門的指針字段關(guān)聯(lián)。RCNM和RICD子字段標識共同作為記錄的標識。

    S-57格式文件使用ISO/IEC 8211作為物理封裝標準,ISO/IEC 8211是基于文件的數(shù)據(jù)交換格式,實現(xiàn)不依賴具體計算機系統(tǒng)的數(shù)據(jù)交換。ISO/IEC 8211是一個以文件為基礎(chǔ)的交換格式,其基本結(jié)構(gòu)是邏輯記錄。

    3 S-52顯示標準

    S-52標準[2]中電子海圖的顯示模式[3]的規(guī)定分為兩大部分,一是電子海圖表示庫,包括色彩編碼表、符號庫(點、線、面)、符號化指令集、物標—符號查找表以及條件符號化過程;二是顯示生成器,在S-52表示庫的各項內(nèi)容的基礎(chǔ)上,把按S-57標準結(jié)構(gòu)化編碼[7]組織的數(shù)據(jù)以正確的形式顯示。電子海圖繪制算法,遍歷S-57數(shù)據(jù)中的物標對象,提取物標屬性,在檢索表中根據(jù)物標屬性查找相應(yīng)的符號化繪制指令[8],該繪制指令從符號庫中載入符號,從顏色表中獲取對應(yīng)的顏色,進行繪制[9]。

    圖2 S52顯示標準模塊圖

    S52標準主要由三個部分構(gòu)成,第一部分對電子海圖的改正問題做出了詳細的規(guī)定,給出了海圖改正的方法和流程;第二部分描述了ECDIS屏幕上電子海圖的顏色及符號的使用細節(jié);第三部分定義了ECDIS的相關(guān)術(shù)語。其中,第二部分的《顏色和符號規(guī)范說明》是該標準的重要部分,它確定了ECDIS表達SENC信息[10]的方法和意義。

    此外,S-52標準還包括兩個附件和三個附錄[4],分別如下:

    1) 附件A S-52與IMO ECDIS性能標準參考

    2) 附件B IMO ECDIS性能指標

    3) 附錄1電子航海圖更新指南

    4) 附錄2 ECDIS色彩與符號詳細規(guī)定

    5) 附錄3 ECDIS技術(shù)相關(guān)術(shù)語集[5]

    4 電子海圖通信態(tài)勢軟件系統(tǒng)設(shè)計

    本文研制開發(fā)了電子海圖通信態(tài)勢軟件系統(tǒng)[6],系統(tǒng)模塊圖如圖3所示。

    圖3 系統(tǒng)模塊圖

    主要分為地圖控件模塊、地圖渲染模塊、電子海圖數(shù)據(jù)源、地圖圖層模塊、S52符號模塊、通信態(tài)勢繪制模塊等幾個模塊。

    地圖控件模塊封裝了地圖控件的基本功能、如漫游、縮放、標注、距離測量、加載地圖文件等功能。地圖渲染模塊進行海圖的繪制工作,將解析完的海圖物標數(shù)據(jù)結(jié)構(gòu),繪制到地圖控件上。海圖數(shù)據(jù)源模塊將S57格式的海圖文件解析為基于ORG格式的標準圖層數(shù)據(jù)結(jié)構(gòu),以供地圖渲染模塊進行繪制操作。由于S57格式的海圖數(shù)據(jù)是基于物標的文件格式,而ORG庫中的地圖圖層是基于地理位置屬性的,地圖圖層模塊是將ORG庫解析的S57圖層數(shù)據(jù)結(jié)構(gòu)ORGMapLayer轉(zhuǎn)換為S57物標圖層數(shù)據(jù)結(jié)構(gòu)S57MapLayer。S52符號模塊用于管理物標繪制時所需的樣式信息。通信態(tài)勢繪制模塊用于在海圖上繪制通信站點的連通狀態(tài),通信覆蓋范圍等信息。系統(tǒng)的UML類圖如圖4所示。

    圖4 系統(tǒng)類圖

    4.1地圖控件模塊

    地圖控件模塊類MapCanvas封裝了地圖控件的基本功能,如漫游、縮放、標注等功能。

    基本接口函數(shù)如下:

    setExtent:設(shè)置地圖范圍,在加載完海圖數(shù)據(jù)后,計算出整張海圖所包括的區(qū)域面積,調(diào)用該接口設(shè)置地圖控件顯示的海圖區(qū)域;

    zoomIn:放大地圖,當滾動鼠標時,進行地圖放大操作;

    zoomOut:縮小地圖,當滾動鼠標時,進行地圖縮小操作;

    pan:地圖漫游,拖動鼠標時,移動地圖;

    mapToScreen:地圖坐標轉(zhuǎn)屏幕坐標,在進行地圖繪制時,將地理位置坐標轉(zhuǎn)換為屏幕坐標,進行繪制;

    screenToMap:屏幕坐標轉(zhuǎn)地圖坐標,在進行地圖交互操作,如實時顯示鼠標當前經(jīng)緯度時,將鼠標屏幕坐標轉(zhuǎn)換為地理位置坐標;

    setViewPort:設(shè)置屏幕視圖,屏幕視圖以像素為單位。

    4.2地圖圖層模塊

    電子海圖系統(tǒng)將物標數(shù)據(jù)根據(jù)地理屬性劃分為不同的地圖圖層類S57MapLayer,S57地圖數(shù)據(jù)是基于物標,圖層信息是基于特征的,S57數(shù)據(jù)解析完成后生成的幾何屬性會加入到對應(yīng)的圖層中。

    4.3電子海圖數(shù)據(jù)源

    電子海圖數(shù)據(jù)源類S57DataSource定義解析S57海圖文件,S52表示庫文件的方法和數(shù)據(jù)結(jié)構(gòu),解析后的數(shù)據(jù)結(jié)構(gòu)。地圖數(shù)據(jù)模型采用分層模型結(jié)構(gòu),物標的顯示與地圖的放大尺寸存在一定關(guān)系,物標在不同的地圖放大級別上顯示效果不一樣,數(shù)據(jù)源中的scaleItemGroups是根據(jù)物標顯示閾值將相同顯示閾值的物標進行歸類;symbols用于保存S52解析后的樣式名稱與樣式結(jié)構(gòu)的映射關(guān)系,在繪制物標時,根據(jù)樣式名稱動態(tài)查找對應(yīng)的樣式結(jié)構(gòu)進行繪制。

    數(shù)據(jù)源類的基本接口函數(shù)如下:

    parseDrawInstruction:解析動態(tài)繪制指令;

    parseLookupLine:解析檢索表行;

    parseLookups:解析檢索表,創(chuàng)建檢索表樣式ChartStyle;

    parseS52Symbols:解析S52樣式文件S52RAZDS.RLE,生成S52顯示結(jié)構(gòu)S52Symbol;

    translateChartStyle:使用條件符號;

    getLayerStyle:獲取圖層樣式;

    getComplexSymbol:拼接復(fù)雜符號,S52的符號繪制指令非常復(fù)雜,該函數(shù)是根據(jù)S52的繪制指令生成相應(yīng)的圖標文件,以便重復(fù)繪制,避免重復(fù)解析繪制指令的開銷,提高繪制效率。S57海圖數(shù)據(jù)的加載流程如表1所示。

    表1 S57數(shù)據(jù)加載流程

    地圖圖元項類MapCanvasItem定義地圖圖元的基本特性,包括畫筆、畫刷、顏色等信息,解析地圖物標得到相應(yīng)的樣式信息,根據(jù)物標幾何屬性創(chuàng)建對應(yīng)的地圖圖元,并將樣式信息轉(zhuǎn)換為繪制的筆畫、填充、顏色等信息。海圖圖元分為以下幾種:

    1) 圖片圖元:MapCanvasImageItem

    2) 線圖元:MapCanvasLineItem

    3) 多邊形圖元:MapCanvasPolygonItem

    4) 多邊線圖元:MapCanvasPolylineItem

    5) 文字圖元:MapCanvasTextItem

    4.4電子海圖渲染模塊

    海圖渲染類MapCanvasRenderer定義海圖繪制方法和流程,自定義標識符的繪制方法,海圖圖片數(shù)據(jù)導(dǎo)出方法,是整個電子海圖通信態(tài)勢軟件最核心的模塊,其中海圖繪制流程如下。

    1)遍歷圖層S57MapLayer *layer;

    2)遍歷圖層中的圖元MapCanvasItem *canvasItem;

    3)判斷圖元類型,如果為文字圖元,進入4),如果為圖片圖元,進入5),如果為線型圖元,進入6),如果為多邊形圖元,進入7);

    4)調(diào)用renderTextItem進行文字圖元繪制;

    5)調(diào)用renderImageItem進行圖片圖元繪制;

    6)調(diào)用renderLineItem進行線型圖元繪制;

    7)調(diào)用renderPolygonItem進行多邊形圖元繪制;

    8)繪制自定義標識符canvasMarker,繪制通信態(tài)勢標識符,經(jīng)緯度標識符。

    4.5S-52符號模塊

    S52符號表示文件S52RAZDS.RLE中定義了每個物標對應(yīng)的S52繪圖指令;條件符號化的指令將物標的繪制操作定義為簡短的繪制指令,渲染模塊在繪制時,動態(tài)解析該指令為基本繪制命令,轉(zhuǎn)移到相應(yīng)的基本繪制回調(diào)函數(shù)中繪制,該文件中大致包含如下幾項:

    1) Color-tables:記錄的是S52標準下各種顯示模式的基準色;

    2) Lookups:記錄的是各種類型S52標準的點線面繪制;

    3) Line-styles:記錄的是各種線型;

    4) Patterns:記錄的是各種類型圖案的繪制;

    5) Symbols:記錄的是各種類型符號的繪制;

    這幾部分的關(guān)系是:Lookups提供總體繪制方法,在繪制方法中調(diào)用其它部分的定義實現(xiàn)最終的繪制。也就是說,一個obj對象的繪制,首先需要定位到它屬于Lookups中的哪一類,再根據(jù)Lookups的記錄查找線、圖案、符號和顏色完成繪制和填充。

    4.6通信態(tài)勢模塊

    通信態(tài)勢軟件一般需要繪制通信站點標識,通信鏈路狀態(tài),通信區(qū)域范圍等信息,在傳統(tǒng)海圖軟件刷新界面性能較慢,而通信態(tài)勢的變化頻繁,要求軟件必須迅速繪制通信狀態(tài),因此軟件設(shè)計了地圖標識符類MapCanvasMarker,用戶可以自定義通信標識符,在海圖界面不變化時,程序直接繪制緩存的海圖圖片,在圖片上繪制地圖標識符,這樣繪制速度會得到極大提升。

    MapCanvasMarker的定義如下:

    class MapCanvasMarker

    {

    QList points;//點

    QList lines;//線

    QList polylines;//多邊線

    QList polygons;//多邊形

    QList circles;//圓形

    QList rings;//圓環(huán)

    };

    基本接口函數(shù)如下:

    setAlpha:設(shè)置透明度;

    setLineWidth:設(shè)置線寬度;

    setPointSize:設(shè)置點符號大??;

    setOutlineColor:設(shè)置輪廓顏色;

    setFillColor:設(shè)置填充顏色;

    屏幕標識符類MapScreenMarker區(qū)別于地圖標識符,屏幕標識符是基于屏幕坐標,的標識符,例如經(jīng)緯度的顯示,比例尺、導(dǎo)航條等控件的繪制,都是基于屏幕坐標,用戶以底圖為背景,添加其它需要前置顯示的內(nèi)容,如雷達掃描圖、戰(zhàn)場態(tài)勢、告警信息等。

    MapScreenMarker定義:

    class MapScreenMarker

    {

    QList points;//點

    QList lines;//線

    QList polylines;//多邊線

    QList polygons;//多邊形

    QList texts;//文字

    };

    屏幕標識符類的基本接口函數(shù)與標識符類一致。

    電子海圖通信態(tài)勢軟件的實際效果圖如圖5。

    圖5 電子海圖通信態(tài)勢效果圖

    5 結(jié)語

    本文結(jié)合S-57,S-52標準,采用GDAL,OGR庫讀取標準的S57格式文件,自主開發(fā)了基于S52標準的海圖渲染控件,不足之處在于,海圖S52的符號化指令過于復(fù)雜,可讀性差,不利于訂制個性化的顯示方案,后期考慮將S52的符號繪制指令XML格式化,便于修改。另外對于電子海圖格式目前只支持S-57格式的數(shù)據(jù),對基于CM93等其余格式的支持不夠。

    [1] IHO. IHO transfer standard for digital hydrographic data publication S-57(Edition 3.1)[S].MONACO,2011.

    [2] IHO.S-52-specifications for chart content and display aspects of ECDIS(Edition 6.0)[S].MONACO,2011.

    [3] Li Xing-feng. Electronic chart display and navigation system based on S-57 international standard[D]. Xi’an: Xidian University,2007.

    [4] The International Hydrographic Bureau.IHO Ecids Presentation Library Users Manual Edition 3.2[S].MONACO,2000.

    [5] 國際海道測量組織.電子海圖及其應(yīng)用系統(tǒng)國際規(guī)范和標準(S-57篇)[M].大連:大連海事大學(xué)出版社,1999:30-33.

    [6] 國際海道測量組織.電子海圖及其應(yīng)用系統(tǒng)國際規(guī)范和標準(S-52篇)[M].大連:大連海事大學(xué)出版社,1999:30-33.

    [7] 黃潔.基于ArcGIS組件的電子海圖顯示系統(tǒng)的研究與實現(xiàn)[D].武漢:武漢理工大學(xué),2008.

    [8] 李興鋒.基于S-57國際標準的電子海圖顯示與導(dǎo)航系統(tǒng)[D].西安:西安電子科技大學(xué),2007.

    [9] 唐經(jīng)宇,劉東峰,孫粵輝,等.S-57電子海圖文件基礎(chǔ)處理庫的設(shè)計實現(xiàn)[J].計算機工程與科學(xué),2013(2):41-45.

    [10] 董才華,秦臻.電子海圖數(shù)據(jù)讀取與顯示技術(shù)[J].中國航海,2012(4):31-33.

    Design and Implementation of ECDIS Communication Situation*

    The paper mainly introduces the key technology of electronic chart information system design and implementation.The data structure model of electronic chart IHO S-57 and IHO S-52 are introduced in this paper.On the basis of the design and implementation of electronic chart communication software, the realization of electronic chart S-52 standard, electronic map zoom, panning related functions are discussed emphatically, and the rendering of the communication situation custom identifier and the latitude and longitude screen identifier are discussed emphatically.

    S-57, S-52, ECDIS, communication situation

    2016年2月12日,

    2016年3月22日

    尤方圓,男,碩士研究生,工程師,研究方向:數(shù)據(jù)鏈消息處理。

    TP311

    10.3969/j.issn.1672-9730.2016.08.031

    猜你喜歡
    海圖標識符控件
    淺析5G V2X 通信應(yīng)用現(xiàn)狀及其側(cè)鏈路標識符更新技術(shù)
    基于底層虛擬機的標識符混淆方法
    紙海圖AI小改正制作模式探討
    航海(2020年4期)2020-08-17 16:13:40
    基于區(qū)塊鏈的持久標識符系統(tǒng)①
    少林功夫拳(三)
    少林與太極(2018年9期)2018-09-28 08:37:34
    關(guān)于.net控件數(shù)組的探討
    軟件(2018年7期)2018-08-13 09:44:42
    數(shù)字美術(shù)館“數(shù)字對象唯一標識符系統(tǒng)”建設(shè)需求淺議
    點亮兵書——《籌海圖編》《海防圖論》
    孫子研究(2016年4期)2016-10-20 02:38:06
    電子海圖在內(nèi)河船舶綜合導(dǎo)航系統(tǒng)中的應(yīng)用探討
    就這樣玩會VBA中常見的自定義控件
    電腦迷(2012年24期)2012-04-29 00:44:03
    抚远县| 泗阳县| 武强县| 手游| 澎湖县| 红河县| 施秉县| 柳江县| 宁城县| 从化市| 平度市| 凤台县| 阜康市| 永嘉县| 海南省| 白河县| 乌海市| 临洮县| 黄大仙区| 资源县| 仪征市| 永嘉县| 屏山县| 广饶县| 渭源县| 岐山县| 商水县| 阳泉市| 喜德县| 衡阳市| 逊克县| 阳谷县| 拉孜县| 武城县| 盐池县| 大洼县| 双桥区| 曲水县| 漳平市| 南丹县| 西乌珠穆沁旗|