• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      鐵路固定行車設(shè)備建模軟件包的設(shè)計(jì)與實(shí)現(xiàn)

      2024-01-08 04:16:44孟德軍
      鐵路計(jì)算機(jī)應(yīng)用 2023年12期
      關(guān)鍵詞:圖檔圖元道岔

      孟德軍

      (中國(guó)鐵路沈陽(yáng)局集團(tuán)有限公司 信息技術(shù)所,沈陽(yáng) 110001)

      反映鐵路路網(wǎng)結(jié)構(gòu)及線路設(shè)備的圖紙(如站場(chǎng)平面示意圖、車站信號(hào)平面布置圖、區(qū)間信號(hào)平面布置圖等)是鐵路重要的基礎(chǔ)技術(shù)資料[1]。隨著鐵路信息化應(yīng)用的深入開展,多種信息系統(tǒng)中的設(shè)備以建模后的圖形文檔(簡(jiǎn)稱:圖檔)作為人機(jī)交互操作界面,具有簡(jiǎn)明直觀的特點(diǎn)[2]。行車相關(guān)的輔助決策類應(yīng)用(如行車調(diào)度自動(dòng)調(diào)整),需要直接提取或識(shí)別設(shè)備圖檔中的信息作為智能計(jì)算的基礎(chǔ)參數(shù),從而簡(jiǎn)化數(shù)據(jù)維護(hù)[3]。以上應(yīng)用具有共性需求,即設(shè)備建模后圖紙的繪制、展示、交互及信息提取。

      針對(duì)以上需求,現(xiàn)有的解決方案大多采用AutoCAD 或Visio 等國(guó)外商業(yè)軟件提供的二次開發(fā)技術(shù)來(lái)實(shí)現(xiàn)[4],但存在以下問(wèn)題:(1)AutoCAD 或Visio 繪制的圖紙,圖形元件允許被打散,設(shè)備信息識(shí)別與提取存在困難;(2)AutoCAD 與Visio 雖然提供了嵌入其他應(yīng)用的圖形組件,但均采用COM/ActiveX 技術(shù)實(shí)現(xiàn),僅能在Windows 平臺(tái)上由桌面應(yīng)用程序調(diào)用,缺少面向Web 應(yīng)用的圖形組件,與目前主流的基于Web 的應(yīng)用系統(tǒng)集成困難;(3)即使在Windows 平臺(tái)桌面應(yīng)用上,其二次開發(fā)方式也不夠靈活,需要購(gòu)買國(guó)外軟件授權(quán),投入較大;(4)缺少面向鐵路應(yīng)用的語(yǔ)義層抽象,開發(fā)難度較大。此外,國(guó)內(nèi)文獻(xiàn)關(guān)于如何使用二次開發(fā)技術(shù)提高繪圖質(zhì)量與效率方面的研究較多[5-8],但對(duì)圖紙信息與業(yè)務(wù)系統(tǒng)集成方面的研究較少。

      基于此,本文研發(fā)了一套鐵路固定行車設(shè)備建模軟件包,利用可擴(kuò)展標(biāo)記語(yǔ)言(XML,eXtensible Markup Language)定義了圖形元件(簡(jiǎn)稱:圖元)模具文檔格式、圖檔格式;設(shè)計(jì)了圖檔的編輯功能(即圖檔編輯器)、圖元模具的制作功能(即圖元模具設(shè)計(jì)器);設(shè)計(jì)了桌面應(yīng)用交互組件、Web 應(yīng)用交互組件及組件類庫(kù),可與其他應(yīng)用系統(tǒng)深度融合,實(shí)現(xiàn)對(duì)鐵路運(yùn)輸生產(chǎn)運(yùn)營(yíng)線路設(shè)備的數(shù)字化、可視化管理,滿足運(yùn)輸管理相關(guān)應(yīng)用系統(tǒng)中集成或利用設(shè)備圖檔的共性需求,擺脫對(duì)國(guó)外商用軟件的過(guò)度依賴。

      1 圖元及圖檔格式設(shè)計(jì)

      圖檔是由抽象化的描述股道、道岔、信號(hào)機(jī)等固定行車設(shè)備的圖元及其業(yè)務(wù)屬性與關(guān)聯(lián)關(guān)系構(gòu)成。圖元模具用于復(fù)制出同一類型的圖元,其定義了圖元的矢量圖形表示,即一系列參數(shù)控制的繪圖指令序列。因此,建模圖檔也是一種矢量圖描述。

      1.1 圖元模具格式定義

      利用XML 定義圖元模具文檔格式,根元素命名為StencilDocument。一個(gè)圖元模具文檔可以包含多個(gè)圖元模具;每個(gè)圖元模具包含圖形表示的相關(guān)元素,如形狀、字體、填充、線條樣式、文本樣式等,其中,形狀可以嵌套定義,即形狀元素可包含子形狀元素。形狀元素包含繪制路徑(GraphicsPath)集合,由直線、折線、圓弧、橢圓弧、二次貝塞爾曲線、三次貝塞爾曲線、SPLINE 樣條曲線、NURBS樣條曲線為基本的繪圖指令組成。

      此外,圖元模具還包含控制點(diǎn)、連接點(diǎn)及業(yè)務(wù)屬性定義。同一圖元在不同的業(yè)務(wù)屬性下可以有不同的外觀呈現(xiàn)。圖形坐標(biāo)、樣式、屬性都可以使用由算數(shù)表達(dá)式及自定義函數(shù)組成的“公式”,利用詞法分析、語(yǔ)法分析、表達(dá)式樹等技術(shù)實(shí)現(xiàn)“公式”的動(dòng)態(tài)求值。

      1.2 圖檔格式定義

      利用XML 定義圖檔格式,根元素命名為RailDrawDocument,其下可包含圖元模具引用元素集合、圖層元素集合、節(jié)點(diǎn)元素集合、連接元素集合及柵格圖像集合。

      節(jié)點(diǎn)元素集合下可包含分組元素與節(jié)點(diǎn)元素,分組是嵌套定義的,其下可包含子節(jié)點(diǎn)與子分組。節(jié)點(diǎn)按類型分為塊圖元節(jié)點(diǎn)、線圖元節(jié)點(diǎn)與一般形狀節(jié)點(diǎn),圖元節(jié)點(diǎn)引用圖元模具,其外觀是由模具決定的,僅包含形狀屬性與業(yè)務(wù)屬性的修改值,節(jié)省了存儲(chǔ)空間。如建模圖檔中的道岔節(jié)點(diǎn),包含節(jié)點(diǎn)坐標(biāo)與道岔類型、道岔編號(hào)等業(yè)務(wù)屬性,其業(yè)務(wù)屬性是在圖元模具中嚴(yán)格定義的。連接元素由源節(jié)點(diǎn)、源端口、目的節(jié)點(diǎn)、目的端口四元組表示,用來(lái)建立建模圖檔中節(jié)點(diǎn)間的連接關(guān)系,從而形成圖元節(jié)點(diǎn)間的拓?fù)潢P(guān)聯(lián)結(jié)構(gòu)。

      圖1 給出了一個(gè)具體的XML 格式圖檔示例,其表示一個(gè)調(diào)車信號(hào)機(jī)及與之關(guān)聯(lián)的2 個(gè)股道。其中,Masters 元素下通過(guò)UID 引用了“矮調(diào)”與“普通線路”2 個(gè)圖元模具;Nodes 元素下,ID 為“1”的Sym 元素的M 屬性為0,其代表Masters 中索引0,即“矮調(diào)”圖元模具;Links 元素下的2 個(gè)Link 元素表示調(diào)車信號(hào)機(jī)與左右兩側(cè)的股道的連接。從示例可見,XML 表示的圖檔具有開放共享、簡(jiǎn)潔明了、易于處理的特點(diǎn),通過(guò)圖元模具的引用,節(jié)省了數(shù)據(jù)存儲(chǔ)空間。

      圖1 調(diào)車信號(hào)機(jī)與連接股道圖檔示例

      2 軟件包功能設(shè)計(jì)

      2.1 圖元模具制作

      軟件包設(shè)計(jì)了2 種圖元模具制作方法:(1)通過(guò)自由繪制圖形與模具制作元件(包括定位點(diǎn)、對(duì)稱點(diǎn)、輔助線、標(biāo)簽、格式文本、交叉點(diǎn)、控制點(diǎn)、卯接頭、榫接頭、元件屬性等)相配合,組合后自動(dòng)生成圖元模具;(2)通過(guò)圖元模具設(shè)計(jì)器,更加精細(xì)化地調(diào)整圖元形狀,利用樹形視圖展示模具結(jié)構(gòu)定義,通過(guò)屬性框定義變換公式與業(yè)務(wù)屬性,如圖2 所示。

      圖元模具設(shè)計(jì)器的輸出除了XML 表示的模具文檔之外,還可以導(dǎo)出Web 應(yīng)用所需要的Javascript 圖元模具庫(kù),其中的屬性公式轉(zhuǎn)換為Javascript 函數(shù),提高了瀏覽器端的計(jì)算效率。

      2.2 圖檔編輯器

      圖檔編輯器提供了圖形對(duì)象的變換操作(平移、旋轉(zhuǎn)、縮放、翻轉(zhuǎn))、組合拆分、組合嵌套、復(fù)制粘貼、撤銷重做等功能。設(shè)計(jì)了自定義連接點(diǎn)管理、曲形曲線編輯、自動(dòng)折線避讓等編輯功能,可從圖元模具選項(xiàng)板中選取圖元模具,拖放至圖形編輯區(qū),創(chuàng)建該圖元模具對(duì)應(yīng)的圖元節(jié)點(diǎn)。圖元節(jié)點(diǎn)是圖元模具的實(shí)例化,繼承了圖元模具的形狀及屬性、控制點(diǎn)、連接點(diǎn)。

      控制點(diǎn)可用來(lái)調(diào)整圖元節(jié)點(diǎn)的外觀形狀,如用鼠標(biāo)拖動(dòng)控制點(diǎn)改變復(fù)式交分道岔的形狀、道岔號(hào)的相對(duì)顯示位置等。連接點(diǎn)是用于與其他圖元節(jié)點(diǎn)建立連接的,一個(gè)圖元可以有多個(gè)連接點(diǎn)。連接點(diǎn)分為榫接頭、卯接頭2 種類型,在處于編輯狀態(tài)的圖形中用“x”表示卯接頭,“+”表示榫接頭。線圖元(如股道線)的2 個(gè)端點(diǎn),默認(rèn)是連接點(diǎn),且都為榫接頭,可以與其他圖元節(jié)點(diǎn)中的卯接頭建立連接。在編輯器中拖動(dòng)卯接頭所屬圖元節(jié)點(diǎn),會(huì)連帶改變與之相連接的榫頭所屬圖元節(jié)點(diǎn)的形狀。拖動(dòng)榫接頭到卯接頭附近則建立連接,快速拖動(dòng)榫接頭離開卯接頭則斷開連接。另外,按照鐵路信號(hào)平面布置圖的特點(diǎn),設(shè)計(jì)了“魔法棒”功能,即只需要將設(shè)備圖元拖放到線路附近,就可自動(dòng)建立連接,提高建模效率。

      2.3 組件類庫(kù)

      2.3.1 交互組件設(shè)計(jì)

      分別針對(duì)桌面應(yīng)用與Web 應(yīng)用,設(shè)計(jì)了圖形組件及類庫(kù),供外部應(yīng)用程序調(diào)用。圖形組件可讀取并顯示編輯器生成的建模圖檔,具備平移、鼠標(biāo)焦點(diǎn)縮放、縮略圖導(dǎo)航,以及路徑選取、圖元選取、浮動(dòng)提示、信息標(biāo)注等功能。指定開始節(jié)點(diǎn)與終止節(jié)點(diǎn),在標(biāo)出路徑的同時(shí),還可給出該路徑經(jīng)過(guò)的道岔、信號(hào)、軌道區(qū)段信息。

      2.3.2 類庫(kù)設(shè)計(jì)

      類庫(kù)分為底層和上層,底層是沒(méi)有業(yè)務(wù)含義的圖元對(duì)象層,上層是具有鐵路專業(yè)含義的語(yǔ)義對(duì)象層。語(yǔ)義對(duì)象層建立在圖元對(duì)象層之上,與應(yīng)用需求相關(guān),不同類別的圖檔建立不同的語(yǔ)義對(duì)象層。

      對(duì)于信號(hào)平面布置圖,主要設(shè)計(jì)以下幾類對(duì)象:(1)INodeInLine 接口對(duì)象,代表與線路管理相關(guān)的設(shè)備(道岔、信號(hào)機(jī)、絕緣子等);(2)IRailLine接口對(duì)象,代表線路、實(shí)體線路與聯(lián)動(dòng)道岔的內(nèi)部隱含的邏輯線路,聯(lián)動(dòng)道岔類繼承簡(jiǎn)單道岔類,主要有雙動(dòng)、交叉渡線、4 組復(fù)式交分、5 組復(fù)式交分與6 組復(fù)式交分;(3)軌道區(qū)段對(duì)象,以信號(hào)機(jī)、軌道絕緣子為邊界確定軌道區(qū)段;(4)供電單元對(duì)象,以接觸網(wǎng)絕緣與接觸網(wǎng)開關(guān)為邊界確定供電單元對(duì)象。

      2.3.3 導(dǎo)入/導(dǎo)出功能設(shè)計(jì)

      為了避免重復(fù)的制圖工作,軟件包設(shè)計(jì)了數(shù)據(jù)導(dǎo)入轉(zhuǎn)換功能,包括:(1)導(dǎo)入既有的Visio 2007格式的圖形文件,轉(zhuǎn)換為本軟件包定義的XML 格式文件;(2)導(dǎo)入Visio 模具庫(kù)文件,轉(zhuǎn)換為本軟件包定義的模具庫(kù)文件;(3)導(dǎo)入SVG 圖形文件,并可將Adobe Illustrator 制圖中的符號(hào)圖形轉(zhuǎn)換為圖元模具;(4)導(dǎo)入AutoCAD 交換圖紙格式(DXF)圖形文件,對(duì)應(yīng)于一般幾何圖形對(duì)象;(5)導(dǎo)出SVG 格式的圖形文檔;(6)導(dǎo)出Web 應(yīng)用的JSON格式文檔。

      3 關(guān)鍵技術(shù)

      3.1 技術(shù)棧

      針對(duì)不同平臺(tái),分別使用不同的技術(shù)棧,如表1所示,實(shí)現(xiàn)用戶界面與圖形渲染功能。

      表1 軟件包實(shí)現(xiàn)技術(shù)棧

      軟件包采用面向?qū)ο蟮能浖O(shè)計(jì)方法,不同平臺(tái)上使用的編程語(yǔ)言(C#與Typescript)雖然不同,但核心類設(shè)計(jì)具有同構(gòu)性。

      3.2 Web 組件封裝

      目前,大多信息系統(tǒng)是基于Web 技術(shù)開發(fā)的,但應(yīng)用開發(fā)框架多種多樣,如Vue、Angular 等。不同的應(yīng)用開發(fā)框架采用不同的組件封裝技術(shù),互操作困難。為了使Web 圖形組件與調(diào)用方使用的開發(fā)框架無(wú)關(guān),軟件包采用了Web Component 技術(shù)。

      Web Components 是萬(wàn)維網(wǎng)聯(lián)盟推動(dòng)的一項(xiàng)標(biāo)準(zhǔn),旨在豐富 HTML 的 DOM 特性,讓 HTML 有更強(qiáng)大的復(fù)用能力。無(wú)論調(diào)用方采用什么框架,只要在HTML 頁(yè)面中簡(jiǎn)單插入“”標(biāo)簽,就可在頁(yè)面中顯示建模圖檔。

      4 軟件包應(yīng)用

      4.1 鐵路營(yíng)業(yè)線施工系統(tǒng)應(yīng)用

      軟件包內(nèi)含的圖形組件,應(yīng)用在“鐵路營(yíng)業(yè)線施工計(jì)劃管控信息系統(tǒng)”中,如圖3 所示。

      圖3 施工計(jì)劃錄入界面

      圖3 上半部視圖顯示軟件包提供的圖形組件所呈現(xiàn)車站的信號(hào)平面布置圖,提供施工計(jì)劃圖形化錄入界面,用戶可用鼠標(biāo)點(diǎn)選信號(hào)機(jī)、股道、道岔等設(shè)備圖元,在圖上直接標(biāo)注施工影響范圍,具有操作直觀、準(zhǔn)確、明晰的特點(diǎn)。由于圖元本身包含業(yè)務(wù)屬性,所以能夠自動(dòng)轉(zhuǎn)換為文本描述,如圖3中“5 號(hào)道岔至X1 信號(hào)機(jī)至4 號(hào)道岔間線路”,形成了數(shù)字化的施工計(jì)劃。

      4.2 教學(xué)仿真實(shí)驗(yàn)應(yīng)用

      通過(guò)本文軟件包繪制的站場(chǎng)及區(qū)間平面信號(hào)布置圖,以及可編程組件,已應(yīng)用在“調(diào)度集中區(qū)段行車指揮虛擬仿真實(shí)驗(yàn)系統(tǒng)”中,如圖4 所示。

      圖4 虛擬仿真實(shí)驗(yàn)教學(xué)界面

      上部視圖是由軟件包圖形組件所呈現(xiàn)的站內(nèi)及區(qū)間線路設(shè)備模型,其中,設(shè)備圖元根據(jù)模擬指令顯示不同的狀態(tài)。圖4 中的“11316”運(yùn)行在進(jìn)站線路上,其下線路變紅色表示閉塞分區(qū)占用,其后方區(qū)間四顯示信號(hào)機(jī)分別顯示紅燈、黃燈、黃綠燈。

      通過(guò)在虛擬仿真實(shí)驗(yàn)教學(xué)平臺(tái)上模擬車站及區(qū)間線路信號(hào)聯(lián)鎖,結(jié)合列車運(yùn)行圖表,仿真列車運(yùn)行,幫助學(xué)生學(xué)習(xí)理解列車運(yùn)行圖、進(jìn)路聯(lián)鎖、調(diào)度命令等基本概念,掌握在調(diào)度集中區(qū)段行車調(diào)度指揮的基本原理與相關(guān)知識(shí)。

      5 結(jié)束語(yǔ)

      本文介紹了鐵路行車設(shè)備建模軟件包的設(shè)計(jì)思路、實(shí)現(xiàn)技術(shù)與應(yīng)用案例。軟件包中的圖檔編輯器可用于繪制鐵路路網(wǎng)示意圖、站場(chǎng)區(qū)間平面布置圖,替代AutoCAD、Visio 等平面建模軟件,節(jié)約應(yīng)用系統(tǒng)集成時(shí)的軟件采購(gòu)成本;軟件包實(shí)現(xiàn)的圖形組件類庫(kù),方便與其他系統(tǒng)集成,具有廣泛的應(yīng)用前景。相比于商業(yè)軟件,本軟件包偏重于鐵路系統(tǒng)內(nèi)應(yīng)用,通用性不強(qiáng),產(chǎn)品化程度較低,在利用內(nèi)嵌動(dòng)態(tài)語(yǔ)言或宏腳本,以及實(shí)現(xiàn)用戶自定義的功能等方面有待進(jìn)一步研究探索。

      猜你喜歡
      圖檔圖元道岔
      一種組態(tài)控件技術(shù)在電力監(jiān)控系統(tǒng)中的運(yùn)用
      學(xué)術(shù)出版物插圖的編排要求(一):圖注
      聯(lián)鎖表自動(dòng)生成軟件的設(shè)計(jì)與實(shí)現(xiàn)
      中低速磁浮道岔與輪軌道岔的差異
      場(chǎng)間銜接道岔的應(yīng)用探討
      既有線站改插鋪臨時(shí)道岔電路修改
      變電站圖檔資料綜合管理系統(tǒng)的研究與設(shè)計(jì)
      電力設(shè)計(jì)院圖檔管理的數(shù)字化實(shí)現(xiàn)
      基于Qt繪圖系統(tǒng)的圖形應(yīng)用優(yōu)化研究與實(shí)現(xiàn)
      軟件(2016年12期)2016-02-13 05:58:14
      清代樣式雷圖檔保管研究
      北京檔案(2015年12期)2015-05-30 10:48:04
      弥渡县| 泸西县| 武夷山市| 当阳市| 东乌珠穆沁旗| 河北区| 麦盖提县| 济南市| 石林| 星座| 巴青县| 会理县| 宿松县| 宜良县| 新绛县| 武威市| 温州市| 乐至县| 临夏市| 绍兴县| 甘谷县| 清苑县| 扎赉特旗| 唐海县| 漾濞| 绍兴市| 德清县| 商丘市| 象州县| 蕉岭县| 吉安市| 锡林浩特市| 定兴县| 山西省| 进贤县| 兰考县| 黎城县| 河北区| 曲水县| 长丰县| 水城县|