• 
    

    
    

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

      基于AutoCAD二次開發(fā)技術的城市軌道交通剛性接觸網(wǎng)輔助繪圖軟件設計

      2019-01-03 08:21:20黃齊來慈明洋
      鐵路計算機應用 2018年12期
      關鍵詞:錨段平面布置接觸網(wǎng)

      黃齊來,慈明洋

      (北京城建設計發(fā)展集團股份有限公司,北京 100044)

      隨著城市軌道交通高速發(fā)展,以剛性接觸網(wǎng)為牽引網(wǎng)制式的項目日益增多,設計任務顯著加重。剛性接觸網(wǎng)沿線架設,若依靠AutoCAD手工繪圖,工作效率低且易出錯。自動化輔助繪圖軟件可提升繪圖效率和準確性,解決工期緊任務重的難題。

      目前,CAD二次開發(fā)已有較為廣泛的應用,在電氣化鐵路柔性接觸網(wǎng)設計中已有成熟的輔助繪圖軟件[1-2]。趙海軍等人應用AutoLISP開發(fā)了針對剛性接觸網(wǎng)的平面布置軟件,能夠自動計算和繪制錨段[3]。田升平對地鐵剛性接觸網(wǎng)平面設計軟件進行優(yōu)化,采用ObjectARX進行開發(fā)[4]。而隨著項目經(jīng)驗的積累,設計人員在總結了設計要點并儲備大量的標準錨段數(shù)據(jù)后,提出剛性接觸網(wǎng)輔助繪圖軟件以標準錨段數(shù)據(jù)庫為基礎,實現(xiàn)參數(shù)化和標準化地自動繪圖,簡化軟件算法,降低軟件開發(fā)難度。本文基于AutoCAD二次開發(fā)技術,采用ObjectARX開發(fā)環(huán)境,設計一款剛性接觸網(wǎng)輔助繪圖軟件。根據(jù)用戶選擇的標準錨段,軟件即可通過數(shù)據(jù)庫接口調取坐標并進行自動化繪圖,從開發(fā)難度和繪圖流程方面進行優(yōu)化,提高了剛性接觸網(wǎng)的設計效率和準確性。

      1 剛性接觸網(wǎng)標準錨段數(shù)據(jù)庫的建立

      隨著工程設計經(jīng)驗積累,接觸網(wǎng)專業(yè)已儲備大量原始數(shù)據(jù),具有成熟的標準錨段設計資料。通過歸納剛性接觸網(wǎng)各種長度和形式的標準錨段,將常用標準錨段懸掛點布置坐標分別預存儲,整理成可直接調用的數(shù)據(jù)源文件,即可建立標準化的錨段數(shù)據(jù)庫,為輔助繪圖軟件的開發(fā)提供基礎條件和輸入?yún)?shù)。

      1.1 標準錨段形式分析

      剛性接觸網(wǎng)平面布置圖由多個連續(xù)的標準錨段組合而成,錨段間通過錨段關節(jié)進行連接。剛性接觸網(wǎng)采用Π型匯流排垂直懸掛,標準錨段長度根據(jù)匯流排制造長度進行設計。為方便運輸和安裝,匯流排單位制造長度為每根12 m,錨段兩端分別設一根7.5 m的匯流排終端頭[5]。標準錨段長度S可表示為S=12 n+2×7.5(n為匯流排根數(shù))。錨段長度一般不大于250 m,按此規(guī)律標準錨段長度依次設計為243 m、231 m、219 m等規(guī)格。

      同時,為保證受電弓磨耗均勻,剛性接觸網(wǎng)在一個錨段范圍內(nèi)呈類“之”字形布置,在錨段中部設置中心錨結。采用全波模式的標準錨段設置,原理如圖1所示[6]。由圖1可知,同一長度的標準錨段可能為圖1中錨段Ⅰ或錨段Ⅱ兩種形式。此外,錨段間的連接形式按功能又可分為絕緣錨段關節(jié)和非絕緣錨段關節(jié),兩種關節(jié)對應的平行匯流排中心線間距分別為200 mm和300 mm。因此同一長度的標準錨段在數(shù)據(jù)庫內(nèi)應預設4種不同形式作為輸入?yún)?shù),分別如圖2 中A、B、C、D所示。數(shù)據(jù)庫中每種標準錨段按此4種形式預存懸掛點平面布置的坐標,具體布置應滿足剛性接觸網(wǎng)對跨距、拉出值的要求,工程項目中已有充分的研究和應用,不再贅述。

      圖1 標準錨段示意圖

      1.2 數(shù)據(jù)庫類型

      為保證出圖的自動化、標準化和可重用性,剛性接觸網(wǎng)輔助繪圖軟件支持讀寫外部數(shù)據(jù)庫,對數(shù)據(jù)庫內(nèi)容進行調用。AutoCAD二次開發(fā)可采用3種方式建立用于參數(shù)化設計的標準數(shù)據(jù)庫:用程序或內(nèi)部數(shù)組方式管理、以數(shù)據(jù)文件方式管理和數(shù)據(jù)庫形式。鑒于剛性接觸網(wǎng)標準錨段數(shù)量不多,為方便實現(xiàn),采用以數(shù)據(jù)文件方式管理數(shù)據(jù)。

      1.3 數(shù)據(jù)庫接口形式

      由于現(xiàn)有的標準錨段資料以Excel表格為主,且Excel應用廣泛,易于管理,用戶可以自由方便地擴充數(shù)據(jù)源,通過COM類庫外部操作實例對象可脫離Excel運行,開發(fā)成本較低,因此,本文采用Excel作為數(shù)據(jù)庫[7],采用Excel COM組件實現(xiàn)數(shù)據(jù)讀取,同時,預留與綜合數(shù)字化辦公系統(tǒng)軟件集成的接口。

      圖2 標準錨段的4種類型

      2 軟件開發(fā)平臺選擇

      AutoCAD二次開發(fā)是根據(jù)設計者用途進行的客戶化定制開發(fā)技術。基于AutoCAD的二次開發(fā)工具主要有3種:VisualLisp、VBA和ObjectARX。其中,VisualLisp與VBA較簡單,開發(fā)速度較快。但控制深度相比ObjectARX稍顯不足。ObjectARX是在ADS基礎上發(fā)展起來的一種C++語言編程環(huán)境,具有完全面向對象的AutoCAD接口,可以直接創(chuàng)建對象,修改屬性和AutoCAD的數(shù)據(jù)庫。同時ObjectARX可以與AutoCAD共享同樣的內(nèi)存空間。ObjectARX開發(fā)平臺主要包括AcRx、AcEd、AcDb、AcGi及AcGe 5個類庫,并且能夠利用MFC類庫建立Windows的軟件操作界面。其功能強大,支持自定義實體,可以很好地運用各種面向對象技術進行底層開發(fā)[8]。

      本文基于Visual Studio 2008平臺,結合Object-ARX 2010開發(fā)工具,可運行在AutoCAD 2010-2011版本的圖形平臺。

      3 軟件設計

      3.1 開發(fā)目標

      剛性接觸網(wǎng)輔助繪圖軟件開發(fā)目標按照預繪制內(nèi)容和預實現(xiàn)功能劃分,作為軟件的設計依據(jù)。

      3.1.1 預繪制的內(nèi)容

      (1)剛性接觸網(wǎng)平面布置圖中懸掛點、匯流排、架空地線等;

      (2)錨段關節(jié)和中心錨節(jié);

      (3)錨段、懸掛點的自動編號;

      (4)尺寸標注。

      3.1.2 預實現(xiàn)的功能

      (1)根據(jù)選取的標準錨段參數(shù)自動繪制連續(xù)多個錨段;

      (2)自動生成對應編號和標注,且標注字體大小和方向滿足施工圖要求;

      (3)自動統(tǒng)計懸掛點、錨段的數(shù)量,并生成統(tǒng)計表格。

      3.2 軟件架構設計

      剛性接觸網(wǎng)輔助繪圖軟件采用分布式架構,按功能劃分為交互界面、數(shù)據(jù)庫讀寫、模型空間圖形的提取和添加等4個主要模塊,軟件具體架構圖如圖3所示。軟件架構中未涉及較多的錨段和懸掛點的計算功能,而采用直接讀取標準錨段數(shù)據(jù)庫,避免由輔助繪圖軟件進行大量復雜運算,簡化了軟件算法,提高了軟件繪圖的速度和靈活性,降低開發(fā)難度。

      圖3 軟件架構

      根據(jù)所搭建的軟件框架,建立主要的自定義功能類,包括:界面類(CArxDialog),讀取類(CExlRD)、獲取類(Cpick),繪圖類(Cdrawing),轉換類(Ctrans)等。其中,界面類負責人機交互功能,解析用戶輸入?yún)?shù),顯示必要的結論和提示信息;讀取類負責調取數(shù)據(jù)庫內(nèi)容;獲取類和繪圖類分別負責圖紙信息的提取和圖形寫入等功能。自定義類之間通過消息傳遞相互作用,而操作細節(jié)封裝在相應的類中[9],自定義類間的消息傳遞關系如圖4所示。

      圖4 自定義類間關系

      3.3 軟件工作流程

      軟件工作流程如圖5所示。

      用戶在AutoCAD界面下通過自定義指令啟動輔助繪圖軟件,根據(jù)提示在圖紙上選中預繪制的線路和起點,并選取合適的標準錨段長度。輔助繪圖軟件則依次執(zhí)行如下流程:

      圖5 軟件工作流程

      (1)解析交互界面中選定錨段參數(shù);

      (2)通過數(shù)據(jù)庫接口組件調取相應的標準錨段中各懸掛點的跨距值和拉出值;

      (3)按指定跨距值和拉出值依次沿線路方向定位,將懸掛點圖形的實體對象添加到當前模型空間(MODEL_SPACE)塊表記錄中的指定位置;

      (4)提取懸掛點處線路的斜率,插入標注并自動按斜率調整方向;

      (5)多段線連接懸掛點,繪制匯流排和架空地線;

      (6)記錄懸掛點數(shù)據(jù),自動生成統(tǒng)計表格。

      ObjectARX中已封裝了大量的經(jīng)典函數(shù),可完成對數(shù)據(jù)庫、實體對象的操作和屬性設置,常用的API如表1所示[10]。此外,本文還針對軟件工作流程自定義封裝了多個繪圖過程中常用的API,如定位類API GetPointAtDistInGeCurve()、GetPointoutLengthInGeCurve( )以及繪圖類API Drawcircles( )、AddBlockRf( )、DrawPolyline( )等,以完成對實體(AcDbEntity)的拾取、繪制等操作,豐富了本軟件繪圖調用的靈活性和軟件功能的可擴展性。主要的自定義API及其作用如表2所示。

      表1 ObjectARX封裝的典型API表

      表2 主要應用的函數(shù)表

      3.4 界面設計

      ObjectARX二次開發(fā)的界面可利用MFC類庫實現(xiàn)。剛性接觸網(wǎng)設計中需要輸入的設計參數(shù)包括:錨段選型,起始錨段編號,繪圖線路方向,架空地線形式等。軟件主要采用MFC中的輸入框和下拉式菜單兩種控件形式設計,界面簡潔直觀,軟件設計的界面如圖6所示。

      4 軟件應用實例

      對軟件測試分別進行黑盒測試與白盒測試,對軟件繪圖功能、各模塊工作流程及數(shù)據(jù)庫讀寫進程進行測試,同時在鄭州市城郊鐵路工程的實際繪圖中進行應用。通過測試,軟件工作流程合理,能夠完成所需的輔助繪圖功能。用戶只需按照界面提示依次選取線路及合適的標準錨段,并輸入起始錨段編號、架空地線形式等設計參數(shù),輔助繪圖軟件便可自動生成剛性接觸網(wǎng)平面布置圖,并完成錨段關節(jié)處理、圖層劃分、標注和編號等工作,且將對應的工程數(shù)量表保存至指定根目錄下。利用輔助繪圖軟件繪制的剛性接觸網(wǎng)平面布置圖的懸掛點、錨段關節(jié)、自動生成的統(tǒng)計表格及標準錨段平面布置圖分別如圖7a~7e所示。根據(jù)實際應用中反饋的問題,經(jīng)過進一步優(yōu)化和修改,軟件已達到了較高的自動化水平。

      圖6 人機交互界面

      5 結束語

      本文以剛性接觸網(wǎng)平面布置圖繪制為需求,基于AutoCAD二次開發(fā)技術設計一款剛性接觸網(wǎng)輔助繪圖軟件。根據(jù)剛性接觸網(wǎng)平面布置原則建立標準錨段數(shù)據(jù)庫,軟件通過調用標準錨段數(shù)據(jù)庫內(nèi)的懸掛點坐標,實現(xiàn)標準化的自動繪圖。

      軟件以Visual Studio 2008為開發(fā)平臺,應用C++語言及ObjectARX開發(fā)工具編寫程序。軟件直接通過數(shù)據(jù)庫接口讀取的方式實現(xiàn)參數(shù)化的自動繪圖,避免復雜運算,簡化算法,降低軟件開發(fā)難度。

      圖7 繪制效果圖

      通過軟件測試及在鄭州市城郊鐵路工程中的實際應用,軟件能夠滿足施工圖設計要求,較大提升設計效率和準確性。

      目前,本軟件尚無法應用于柔性接觸網(wǎng),后續(xù)應積累并建立柔性接觸網(wǎng)基礎數(shù)據(jù)庫,以支持其平面布置繪制。同時編寫軟件說明,為與綜合數(shù)字化辦公系統(tǒng)軟件集成提供接口。

      猜你喜歡
      錨段平面布置接觸網(wǎng)
      探討高層建筑總平面布局和消防設計平面布置
      為開通打下基礎!這條國際鐵路完成接觸網(wǎng)平推驗收
      云南畫報(2021年10期)2021-11-24 01:06:38
      350km/h及以下運營高鐵接觸網(wǎng)整錨段更換整體吊弦施工技術
      基于仿真技術的信號平面布置驗證
      接觸網(wǎng)設備“運、檢、修”分離改革的探討
      110kV戶外GIS變電站總平面布置優(yōu)化
      高速鐵路接觸網(wǎng)研究進展
      接觸網(wǎng)避雷器接地系統(tǒng)分析
      錨段關節(jié)式電分相過電壓的龍格-庫塔解法及抑制
      電測與儀表(2016年8期)2016-04-15 00:30:02
      接觸網(wǎng)絕緣錨段關節(jié)處腕臂與吊弦的計算與應用
      岚皋县| 东兴市| 绿春县| 安泽县| 南京市| 富锦市| 沅陵县| 边坝县| 景谷| 拉萨市| 镇宁| 佳木斯市| 阳信县| 宝丰县| 常宁市| 汝阳县| 佛冈县| 桃源县| 平邑县| 招远市| 佳木斯市| 蒲城县| 洱源县| 鄂州市| 塔河县| 晴隆县| 文登市| 新乐市| 弥渡县| 凉山| 会同县| 富平县| 南和县| 得荣县| 霍林郭勒市| 时尚| 竹溪县| 正蓝旗| 正安县| 乐亭县| 将乐县|