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

?

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

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

孟德軍

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

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

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

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

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

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

1.1 圖元模具格式定義

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

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

1.2 圖檔格式定義

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

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

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

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

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

2.1 圖元模具制作

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

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

2.2 圖檔編輯器

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

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

2.3 組件類庫

2.3.1 交互組件設(shè)計

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

2.3.2 類庫設(shè)計

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

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

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

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

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

3.1 技術(shù)棧

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

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

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

3.2 Web 組件封裝

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

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

4 軟件包應(yīng)用

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

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

圖3 施工計劃錄入界面

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

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

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

圖4 虛擬仿真實驗教學(xué)界面

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

通過在虛擬仿真實驗教學(xué)平臺上模擬車站及區(qū)間線路信號聯(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)知識。

5 結(jié)束語

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

猜你喜歡
圖元道岔模具
一種組態(tài)控件技術(shù)在電力監(jiān)控系統(tǒng)中的運(yùn)用
學(xué)術(shù)出版物插圖的編排要求(一):圖注
聯(lián)鎖表自動生成軟件的設(shè)計與實現(xiàn)
中低速磁浮道岔與輪軌道岔的差異
《模具制造》月刊2020年訂閱通知
第十三屆Asiamold廣州模具展盛大開幕
場間銜接道岔的應(yīng)用探討
既有線站改插鋪臨時道岔電路修改
擦擦模具
模具制造中高速切削技術(shù)的應(yīng)用
马关县| 新余市| 象州县| 淳化县| 大渡口区| 金昌市| 定州市| 微山县| 三都| 崇仁县| 安岳县| 尼勒克县| 内乡县| 云南省| 冀州市| 泗阳县| 鹤壁市| 黄冈市| 南城县| 天台县| 扬中市| 屏南县| 铜陵市| 霍州市| 大石桥市| 山西省| 陆良县| 余姚市| 观塘区| 荆门市| 清原| 孟津县| 石泉县| 南平市| 宁南县| 抚宁县| 荥阳市| 东安县| 乐安县| 漯河市| 武陟县|