駱 暉,方琪根,王保山
(1.中鐵第四勘察設計院集團有限公司 線路站場設計研究院,武漢 430063;2.北京交通大學 交通運輸學院,北京 100044)
鐵路樞紐位于鐵路網的交匯點,由多條線路、多個車站及其他設施、設備組成。若用文本或表格等形式表現其結構特征和信息,不易表述清晰,且在樞紐車站布局、規模、聯絡線設置[1]等設計方案發生改變時,設計人員難以直觀地考察各方案的樞紐客貨運輸能力的情況。因此,需要通過圖形化界面向用戶演示樞紐的結構特征,以及線路、車站等實體及其屬性[2],并對樞紐能力進行計算。根據不同設計方案生成鐵路樞紐客貨運輸能力結果,并通過圖形化界面顯示給用戶,便于用戶查看各種設計方案對應的樞紐能力,從而對樞紐設計方案有更清晰、直觀的理解[3-4]。
因此,本文結合我國鐵路樞紐設計研究的實際情況[5],利用AutoCAD 的鐵路樞紐網絡設計文件,生成數字化的鐵路樞紐網絡[6],為研究鐵路樞紐結構、優化鐵路樞紐布局提供數據支撐[7-9]。
AutoCAD 計算機輔助設計軟件廣泛應用于二維繪圖和三維設計等領域。它的數據文件主要有DWG、DWS 和DXF 等格式。其中,DXF 為文本形式,保存了AutoCAD 有關圖素的詳細信息,是普遍使用的AutoCAD 外部接口文件。
DXF 文件主要由標題段(Header)、表段(Tables)、塊段(Block)、實體段(Entities)和文件結束段(Eof,End of file)5 部分組成。
DXF 利用行存儲數據,每2 行為1 組,第1 行為組的代碼,第2 行為組的值,1 個組代表1 個數據,本文為了表述方便,將DXF 文件的內容簡化,如表1 所示。雖然DXF 文件結構復雜,但只要根據需求獲取建模所需實體段就可以完成相應實體的提取。

表1 信息表述樣例
表1 右側是本文采用的形式,即將左側DXF 文件中用兩行表示的組碼和組值放在同一行中,并用“::”符號將兩部分分開。
圖1 是AutoCAD 軟件繪制的某鐵路樞紐的局部樣例,為展示細節,將紫色框框定的部分區域放大。由圖1 可看出,用AutoCAD 設計的樞紐圖中,主要有2 種圖素:線條和文字。線條都是由多段線(pline)繪制的,包括2 種:用閉合的6 邊形表示車站;用不同顏色的線條表示鐵路線路。文字是單行文字(dtext),是對閉合6 邊形的標注,表示車站名稱。

圖1 AutoCAD 繪制的某鐵路樞紐局部樣例
設計人員在生成樞紐圖時,利用AutoCAD 圖形分層組織的特性,將不同的線路繪制在不同的圖層上,為樞紐網絡數字化建模提供了較大便利。
由于不同的線路存儲在不同的層上,且用線路名命名圖層,所以只需從DXF 中讀出層的定義就可得到樞紐范圍內的線路信息。層的定義在表段只出現一次。DXF 文件中的圖層信息格式如下:

其中,“100::AcDbSymbolTableRecord”是符號定義;“100::AcDbLayerTableRecord”表示后續若干信息是對1 個圖層的描述;“2::京滬鐵路”中“京滬鐵路”是圖層的名稱;“62::7”表示圖層的顏色。第4、6 行信息本文沒有采用,因此沒有給出說明(后面DXF 文件信息格式中沒有用到的信息也一并忽略)。
車站名稱是單行文字,存儲在實體段,且隸屬于指定圖層。單行文字信息格式如下:

其中,“100::AcDbText”引導一個單行文字信息;“10::2 235.15”表示單行文字的x坐標;“20::1 258.66”表示單行文字的y坐標;“30::0.0”表示單行文字的z坐標;“40::1.35”表示文字的高度;“1::高里”表示單行文本信息是“高里”。
車站外型是用多段線繪制的六邊形,存儲在實體段,且隸屬于指定圖層。車站外型信息格式如下:

其中,“100::AcDbPolyline”引導一條多段線信息;“90::6”表示多段線由6 個點組成;“70::1”表示多段線閉合;組碼10 和組碼20 表示一個點的(x,y)坐標,本文列出了多段線經過的2 個點的(x,y)坐標,后面的點省略。
2.4.1 直線繪制
鐵路線路用多段線繪制,存儲在實體段,且隸屬于指定圖層。區間線路信息格式如下:

其中,“100::AcDbEntity”表示當前在實體段;“8::京滬鐵路”表示后面的信息屬于圖層“京滬鐵路”;“100::AcDbPolyline”表示這是一條多段線;“70::0”表示多段線不閉合;組碼10 和組碼20 給出了多段線的第1 個點的坐標(x,y)的值。
2.4.2 曲線繪制
在繪制多段線時,有時會插入曲線,區間線路信息中有圓弧的信息格式如下:


其中,“42::0.18”表示一段圓弧,它的凸度是0.18,這個值是該圓弧所對圓心角的1/4 角的正切值,如圖2 所示。

圖2 凸度計算示意

建模時,為了降低模型的復雜度,可把多段線中的曲線部分分割成若干段小的折線,將區間線路統一用折線表示。
建立數字化的鐵路樞紐網絡模型,需從DXF 文件中讀取鐵路樞紐有價值的信息,把線路、車站、區間等實體的特征數據合理、有效地組織、關聯起來,生成既相對獨立又相互聯系的有機整體,為后續研究工作提供數據支持。
(1)線路索引數據結構
如表2 所示,線路ID 通過人工分配;線路名稱來自DXF 接口文件,數據長度為49;線型和顏色可繼承DXF 中對應的涂層的線性和顏色值;年度/車種是否可用信息則需要通過信息加工模塊補充完善。

表2 線路索引數據結構
(2)車站信息數據結構
如表3 所示,fPnts 記錄的六邊形頂點坐標來自DXF 文件中的閉合多段線信息;車站名稱來自DXF文件的單行文本信息,數據長度為49,但文本信息與車站的綁定需要經信息加工模塊人工完成;車站類型需人工定義。

表3 車站信息數據結構
(3)區間線路組成信息數據結構
表4 中所有字段信息都來自DXF 文件相應內容。

表4 區間線路組成信息數據結構
(4)車站區間連接信息數據結構
如表5 所示,當AutoCAD 格式的設計資料較規范時(區間線路的端點都落在六邊形內),則iStaFID 和iStaTID 可在模型生成時自動填入;區間線路的運營方向則需通過信息加工模塊后期人工賦值。

表5 車站區間連接信息數據結構
根據鐵路樞紐實體的特征數據在DXF 文件中不同的表現形式,設計并編制圖層處理模塊、多段線處理模塊和單行文字處理模塊,提取實體的關鍵信息,生成網絡數字模型,該方法的架構如圖3 所示。

圖3 樞紐網絡數字模型生成方法架構
模型生成階段,通過批量讀入DXF 接口文件,生成鐵路樞紐網絡數字化模型的主要數據,同時,利用信息加工模塊補充區間線路運營方向、線路的年度/車種運用屬性等AutoCAD 設計資料中不能體現的數據。
信息加工模塊提供對車站、線路等實體的修改功能,在沒有DXF 文件時也能創建網絡模型。
設計專業的人員根據研究的需要,在網絡數字化模型基礎上疊加業務數據,計算評價指標,分析網絡可能存在的問題,探尋優化方案。如圖4 所示,在網絡模型基礎上,根據線路的功能和徑路的費用分配列流,計算并展示線路的能力利用率。

圖4 某鐵路樞紐線路能力利用率局部
圖4 中用顏色定性地表示線路能力利用率,也可以添加標注的形式,定量顯示線路的運量和利用率。該鐵路樞紐網絡數字化模型數據信息主要來自DXF 文件,區間線路和車站的連接關系(圖4 紫框部分)由信息加工模塊批量添加,區間線路的運營方向(圖4 綠框部分)在信息加工模塊經人機交互加入。
本文設計的基于DXF 接口文件的鐵路樞紐網絡數字化模型生成方法,已基于VS2013 編碼實現,并應用于鐵路樞紐能力檢算圖形化系統中。使用結果表明:本文設計的方法,可以準確地讀取鐵路線路、車站和區間線路的組成信息,經過信息加工模塊的輔助處理,生成完整的鐵路樞紐網絡數字化模型,建模便捷、數據完整,能夠為研究、評價鐵路樞紐提供數據支撐。