蔡建國 林春峰
(中鐵二院工程集團(tuán)有限責(zé)任公司,四川成都 610031)
Design and Implementation of Railway Investigation System Based on AutoCAD Platform
CAI Jianguo LIN Chunfeng
基于AutoCAD平臺鐵路勘測專業(yè)調(diào)查內(nèi)業(yè)處理軟件的設(shè)計與實(shí)現(xiàn)
蔡建國林春峰
(中鐵二院工程集團(tuán)有限責(zé)任公司,四川成都610031)
Design and Implementation of Railway Investigation System Based on AutoCAD Platform
CAI JianguoLIN Chunfeng
摘要設(shè)計并實(shí)現(xiàn)了一個基于AutoCAD平臺的鐵路勘測調(diào)查軟件。該軟件以房屋、道路、電力線和通訊線為待調(diào)查對象,首先設(shè)計一個里程類,用于存儲鐵路中線里程與坐標(biāo);然后利用AutoCAD提供的二次開發(fā)接口,以交互的方式在修測后的地形圖上進(jìn)行待調(diào)查對象的選擇,通過相關(guān)算法獲得里程、面積、方位和距離等信息,材質(zhì)等其它可選信息以下拉列表的形式供用戶選擇,最終所有的調(diào)查信息以屬性形式存儲于地形圖中,實(shí)現(xiàn)圖形與屬性一體化管理,最后以Excel諸表的形式輸出。該軟件能夠提高鐵路勘測調(diào)查的速度和精度,減少作業(yè)人員工作量。
關(guān)鍵詞AutoCAD勘測線路調(diào)查諸表輸出
鐵路勘測在初測和定測階段需要進(jìn)行線路調(diào)查[1],待調(diào)查的地物包括房屋、道路、電力線和通訊線等;調(diào)查結(jié)果以線路諸表的形式展現(xiàn),內(nèi)容包括:待調(diào)查地物位于離鐵路中線的里程,距離鐵路中線的方位、距離、面積、長寬、材質(zhì)等屬性信息。傳統(tǒng)的方式是:外業(yè)調(diào)查完成后,利用AutoCAD打開勘測修測后的地形圖,量取房屋面積、道路寬度、里程位置等,并結(jié)合外業(yè)調(diào)查信息,以手工方式將所有數(shù)據(jù)和信息輸入到Excel諸表中[2]。這種方式工作量大、效率低、易出錯。本文設(shè)計并實(shí)現(xiàn)了一個基于AutoCAD平臺的鐵路勘測調(diào)查軟件。該軟件以房屋、道路、電力線和通訊線為待調(diào)查對象,首先設(shè)計一個里程類,用于存儲鐵路中線里程與坐標(biāo);然后利用AutoCAD提供的二次開發(fā)接口,以交互的方式在修測后的地形圖上進(jìn)行待調(diào)查對象的選擇,通過相關(guān)算法獲得里程、面積、方位和距離等信息,材質(zhì)等其它可選信息以下拉列表的形式供用戶選擇,最終所有的調(diào)查信息將以屬性形式存儲于地形圖中,實(shí)現(xiàn)圖形與屬性一體化管理;最后將調(diào)查信息以Excel諸表的形式輸出。
1里程類設(shè)計
鐵路勘測調(diào)查過程中,通常以里程確定待調(diào)查對象的位置。為了便于后續(xù)計算,設(shè)計了一個里程類,該類中包含:里程值和其對應(yīng)的北坐標(biāo)值、東坐標(biāo)值,如圖1所示。
里程+里程值:double+北坐標(biāo)值:double+東坐標(biāo)值:double
圖1里程類定義
為了計算某點(diǎn)位于鐵路中線的里程和方位,可以利用一系列、按照里程值從小到大次序排列的里程類實(shí)例表示連續(xù)的鐵路中線。假設(shè)用里程類實(shí)例集合{Ki|i=0,1,…,n}表示鐵路中線,待求里程值點(diǎn)P的坐標(biāo)值為(N,E),計算原理如下:
(1)計算點(diǎn)P與{Ki|i=0,1,…,n}各點(diǎn)相連形成多段線最近點(diǎn)(垂足點(diǎn))的坐標(biāo)值,即求得點(diǎn)P′的坐標(biāo)值(N′,E′),如圖2所示。
(2)遍歷{Ki|i=0,1,…,n},依次取Ki和Ki+1。如果坐標(biāo)值(N′,E′)位于Ki和Ki+1的坐標(biāo)值之間,取Ki和Ki+1進(jìn)行下一步計算;否則繼續(xù)遍歷。
(3)計算Ki距離Ki+1的距離Di、點(diǎn)P′距離Ki的距離di,則點(diǎn)P′的里程為
(1)
點(diǎn)P′的里程值即為點(diǎn)P的里程值。
圖2 計算最近點(diǎn)
為了計算點(diǎn)P的方位(位于鐵路中線的左側(cè)或右側(cè)),按照如下原理計算:
(1)里程點(diǎn)Ki的坐標(biāo)為(Ni,Ei),里程點(diǎn)Ki+1的坐標(biāo)為(Ni+1,Ei+1);
(2)按下列公式計算f
(2)
當(dāng)f>0,點(diǎn)P位于鐵路線位左側(cè);當(dāng)f<0,點(diǎn)P位于鐵路中線右側(cè)。
(3)點(diǎn)P距離鐵路中線的距離為
(3)
2線路調(diào)查內(nèi)業(yè)處理關(guān)鍵技術(shù)
鐵路勘測調(diào)查按照待調(diào)查對象可分為:房屋調(diào)查、道路調(diào)查、電力線調(diào)查和通訊線調(diào)查等。不同的調(diào)查對象,所錄入的信息亦不相同,但是某些信息可以通過地形圖圖面元素計算得到,另外一些信息需要通過下拉選擇或者人工輸入方式錄入。因此,線路調(diào)查內(nèi)業(yè)處理可以歸納為如圖3所示的流程。
圖3 線路調(diào)查內(nèi)業(yè)流程
房屋調(diào)查中,房屋面積、房屋距離中線距離和方位等信息可通過地形圖圖面元素獲取。在地形圖上選擇待調(diào)查的房屋:
(1)可以通過AutoCAD二次開發(fā)接口直接獲得房屋的面積信息,通過輸入房屋層數(shù),可以獲得房屋總面積。
(2)可以獲得地形圖上選擇房屋實(shí)體的節(jié)點(diǎn)集合{Pi|i=1,2,3,…,n},如圖4所示。遍歷該集合,通過式(1)、式(2)和式(3),計算每個節(jié)點(diǎn)距離鐵路中線的距離、方位和里程,取距離最小的一組值作為最終結(jié)果。
圖4 房屋調(diào)查
道路調(diào)查信息中,道路中心位于鐵路中線里程、道路寬度、道路與鐵路中線夾角可通過地形圖圖面元素計算得到。通過一根拉線,可以選擇鐵路中心和雙線道路,如圖5所示。
圖5 道路調(diào)查
計算鐵路中線與雙線道路的交點(diǎn)P1和P2;計算拉線與鐵路中線、雙線道路的交點(diǎn)P3、P4和P5,則:
(1)則α=∠P3P1P4為道路與鐵路中線的夾角。
(2)點(diǎn)P1和點(diǎn)P2連接線的中點(diǎn)處的里程即為道路中心位于鐵路中線的里程,確定里程算法見公式(1)。
(3)點(diǎn)P1和P2之間的距離l可以近似當(dāng)作道路寬度,若需精確計算,則道路寬度為l×sinα。
電力線和通信線調(diào)查信息中,電力線或通信線與鐵路中線交點(diǎn)里程、交叉角度、左右電桿距中線距離等信息可通過地形圖圖面元素計算得到。通過一根拉線,可以選擇鐵路中心和電力線或通信線,如圖6所示。
圖6 電力線及通信線調(diào)查
計算鐵路中線與電力線或通信線的交點(diǎn)P1;計算拉線與鐵路中線、電力線或通信線的交點(diǎn)P2、P3,則:
(1)則α=∠P2P1P3為道路與鐵路中線的夾角。
(2)計算電力線或通信線上位于點(diǎn)P1兩端的節(jié)點(diǎn)N1和N2;
(3)按照式(2)和式(3)計算N1和N2距離鐵路中線的距離和方位。
3軟件實(shí)現(xiàn)
軟件以AutoCAD為基礎(chǔ)平臺,利用其提供的ObjectArx.net開發(fā)接口進(jìn)行功能插件開發(fā)[3-6]。由于線路調(diào)查中不同調(diào)查對象待調(diào)查的信息不同,需要結(jié)合上述思路分對象建立信息錄入模板。以道路調(diào)查為例進(jìn)行闡述,設(shè)計了如圖7所示的信息錄入界面。
圖7 道路調(diào)查信息錄入界面
該界面中,里程、道路寬度和交叉角度都是利用地形圖中的元素計算得到;道路等級種類、孔跨樣式等常用信息以下拉列表的方式供用戶選擇。當(dāng)信息完成旋轉(zhuǎn)或錄入后,所有的信息將以XData[7]的形式保存到地形圖中。
當(dāng)所有的調(diào)查信息錄入完成后,可以將保存到地形圖中的調(diào)查信息以Excel諸表的形式導(dǎo)出,如圖8、圖9所示。
圖8 輸出設(shè)置
里程起道口(平立交)中心訖改移道路長度/m道路等級 種類寬度/m交叉角度/(°)交叉方式有無看守道口工程軌枕鋪面防護(hù)種類間距/cm寬度/m鋼軌類型/(kg/m)板厚/mm柵欄及護(hù)樁/處桿欄類型鐵路在上或下跨線橋孔跨式樣鐵路橋涵/(座/m)道路路面寬度/m材料路面厚度/cm道路(口)土方/m3填方挖方土石附注DK0+14機(jī)耕道4.876相交?土DK0+45機(jī)耕道11.066相交?土DK0+82機(jī)耕道5.958相交?土
圖9輸出諸表
4結(jié)束語
采用人機(jī)交互的方式直接在AutoCAD平臺內(nèi)部,利用勘測修測地形圖進(jìn)行鐵路勘測調(diào)查內(nèi)業(yè)處理,一方面可以利用地形圖中圖面元素直接計算某些信息;另一方面可以將常用的錄入信息以下拉列表的方式集成在屬性錄入對話框中,較少人工輸入。最終所有的信息都將存入地形圖幾何實(shí)體中,實(shí)現(xiàn)圖形與屬性一體化管理,最后將錄入信息以Excel諸表形式輸出。
參考文獻(xiàn)
[1]張金水,張廷楷.道路勘測與設(shè)計[M].上海:同濟(jì)大學(xué)出版社,2005
[2]劉小龍,賴國泉.基于ObjectArx鐵路線路調(diào)查內(nèi)業(yè)處理系統(tǒng)的研究[J].鐵道勘察,2011(2):31-33
[3]杜剛,劉學(xué)東,張磊.基于ObjectArx的AutoCAD二次開發(fā)及應(yīng)用實(shí)例[J].機(jī)械設(shè)計與制造,2004(3):30-32
[4]于蕭榕,郭昌言,陳剛.結(jié)合Objectarx和C#進(jìn)行AutoCAD二次開發(fā)框架的研究[J].科學(xué)技術(shù)與工程,2010,10(20):5085-5090
[5]林春峰,黃華平,閔世平.基于AutoCAD平臺的線路橫斷面線提取系統(tǒng)的設(shè)計與實(shí)現(xiàn)[J].鐵道勘察,2013(4):6-9
[6]楊鋒,程昂,林春峰.基于ObjectArx的地形圖數(shù)據(jù)標(biāo)準(zhǔn)統(tǒng)一軟件的設(shè)計與實(shí)現(xiàn)[J].鐵道勘察,2014(5):5-7
[7]唐紅鷹.基于AutoCAD平臺的shapefile數(shù)據(jù)生產(chǎn)[J].鐵道勘察,2015(1):32-35
中圖分類號:U212.24
文獻(xiàn)標(biāo)識碼:A
文章編號:1672-7479(2015)04-0001-03
作者簡介:第一蔡建國(1974—),男,1997年畢業(yè)于西南交通大學(xué)鐵道工程專業(yè),高級工程師。
收稿日期:2015-04-14