基于AutoCAD的鐵路站場平面圖繪制系統的設計與實現

2014-11-30 劉龍 西南交通大學地球科學與環境工程

  在鐵路線路設計及鐵路基礎設施建設與改造中,鐵路站場平面圖具有十分重要的作用。針對目前站場平面圖繪制效率低、格式不規范等特點,利用Visual C#編程語言對AutoCAD 進行二次開發,設計并開發了鐵路站場平面圖繪制系統,實現了自動制圖與人機交互制圖。制圖系統界面簡潔、操作簡便,為用戶提供了一種快速繪制站場平面圖的途徑。

  引言

  線路站場設計是鐵路線路設計的基本任務。線路站場設計中,主要設計圖有站場平面圖、線路縱斷面圖、線路橫斷面圖等,主要是站場平面圖。與一般地圖相比,鐵路站場平面圖具有精細、突出表示地物設施等特點。目前的繪圖軟件不能高效地進行鐵路站場平面圖的繪制,因此設計一款高效、簡潔的站場平面圖制圖軟件十分必要。

  傳統的AutoCAD 二次開發技術通常是設計AutoCAD 腳本文件,并將腳本文件以插件的形式加載至AutoCAD 工具欄,從而使AutoCAD 具備適用于特定項目的制圖功能,但該技術通常無法實現自動制圖,因此不能從根本上提高鐵路站場平面圖的制圖效率。Visual C#語言對AutoCAD 進行二次開發,具有獨特的優勢,可實現大量數據的自動制圖,并提供標準、統一的地物符號,相對于手動制圖而言,極大地縮短了制圖時間。

1、系統設計思路

  C#是一種安全、穩定、簡單的面向對象的編程語言,綜合了VB 簡單的可視化操作和C + + 的高運行效率。正是由于這些優勢,本文采用C#編程語言對AutoCAD 進行二次開發,開發設計了鐵路站場平面圖繪制系統。

  要實現C#對AutoCAD 的二次開發,需要在C#項目中添加AutoCAD 的引用: AutoCAD 2007 Type Library 和AutoCAD/ObjectDBX Common 17. 0 Type Library。人機交互操作時,Microsoft. VisualBasic.Interaction. AppActivate ( AcadApp. Caption ) ; 是使AutoCAD 對象置于最前的函數,要調用該函數還需添加引用Microsoft. VisualBasic. NET。制圖程序界面與AutoCAD 界面相互獨立,兩者之間通過ActiveX 技術進行通信,實現制圖程序對AutoCAD 的控制與調用。兩者間的通信技術是C#對AutoCAD 二次開發的基礎,用戶在制圖程序界面上進行操作,即可控制AutoCAD 進行制圖,而制圖程序也可獲取AutoCAD 中的圖形信息。系統功能主要包括兩大類,自動制圖和人機交互制圖。自動制圖功能是制圖程序至AutoCAD 的單向通信,制圖程序只向AutoCAD 發送命令。人機交互則為雙向通信,制圖程序不僅向AutoCAD 發送命令,并且還要獲取AutoCAD 中圖形的屬性信息。系統功能模塊見圖1。

系統功能模塊

圖1 系統功能模塊

4、結語

  鐵路站場平面圖在鐵路線路設計中具有十分重要的作用。C#編程語言對AutoCAD 進行二次開發的技術提供了一個制圖系統開發的綜合平臺。本文開發的系統為用戶提供了一種高效、簡潔、方便的鐵路站場平面圖制圖方式,極大地提高了內業工作效率。該系統結構層次清晰、功能齊全、操作方便,便于維護和管理,可更好地滿足高速發展的鐵路事業的要求。