王傳江
(上海市測繪院,上海 200063)
市政道路工程測量中需要根據(jù)設(shè)計(jì)線位進(jìn)行地形、縱橫斷面測量??v斷面測量目的是測定線路中樁處的高程,為線路設(shè)計(jì)提供基礎(chǔ)資料。橫斷面測量是測定中樁處垂直于中線方向的地形起伏形態(tài),繪制橫斷面圖,為路基設(shè)計(jì)、計(jì)算土石方數(shù)量以及施工放邊樁之用。目前縱橫斷面野外測量方法包括全站儀和水準(zhǔn)儀法等。
通常提供給設(shè)計(jì)單位的縱橫斷面數(shù)據(jù)是對應(yīng)每一里程的距離、高程的文本格式,縱橫斷面數(shù)據(jù)通常如下:
里程1 高程1
左側(cè):與中樁距離1高程1與中樁距離2 高程2……
右側(cè):與中樁距離1高程1與中樁距離2 高程2……
里程2高程2
左側(cè):與中樁距離1高程1與中樁距離2 高程2……
右側(cè):與中樁距離1高程1與中樁距離2 高程2……
……
根據(jù)縱橫斷面數(shù)據(jù)可轉(zhuǎn)換生成設(shè)計(jì)所要求各種格式的橫斷面和縱斷面數(shù)據(jù)。
在斷面數(shù)據(jù)檢查時(shí),特別是結(jié)合地形圖對斷面數(shù)據(jù)文本進(jìn)行對照判讀檢查時(shí),如路頭散點(diǎn)、路面方格水準(zhǔn)點(diǎn)、管線的井蓋高程點(diǎn),斷面數(shù)據(jù)與這些特征點(diǎn)數(shù)據(jù)是否矛盾,不直觀。本文基于這一問題,編寫了斷面數(shù)據(jù)處理的ARX程序,根據(jù)地形圖上給定的設(shè)計(jì)線位,將文本格式的斷面數(shù)據(jù)讀入到地形圖中,即將各斷面高程點(diǎn)展點(diǎn)到地形圖上,實(shí)現(xiàn)斷面點(diǎn)與相應(yīng)的設(shè)計(jì)線位相互位置關(guān)系一一對應(yīng),從而實(shí)現(xiàn)每個(gè)斷面點(diǎn)在地形圖中的絕對定位,為斷面數(shù)據(jù)檢查提供一種直觀方便的方法。
本軟件用AutoCAD的二次開發(fā)工具ObjectARX開發(fā),ObjectARX是AutoDesk公司針對AutoCAD平臺上的二次開發(fā)而推出的一個(gè)開發(fā)軟件包,它提供了以C++為基礎(chǔ)的面向?qū)ο蟮拈_發(fā)環(huán)境及應(yīng)用程序接口,能真正快速的訪問AutoCAD圖形數(shù)據(jù)庫。ObjectARX應(yīng)用程序是一個(gè)動(dòng)態(tài)鏈接庫,共享AutoCAD的地址空間,對AutoCAD進(jìn)行直接函數(shù)調(diào)用。所以,使用ARX編程的函數(shù)的執(zhí)行速度得以大大提高。ARX類庫采用了標(biāo)準(zhǔn)的C++類庫的封裝形式,這也大大提高了程序的可靠度和效率。
在AutoCAD中將設(shè)計(jì)線位中線連成為一個(gè)PLINE線,加載ARX程序,選擇線位中線,根據(jù)提示選擇要讀入的斷面數(shù)據(jù)文件,程序根據(jù)斷面數(shù)據(jù)文件中每一里程逐點(diǎn)將斷面高程點(diǎn)展點(diǎn)在線位中線DWG文件中。利用AcDb庫提供的應(yīng)用類查詢和管理Auto-CAD實(shí)體的實(shí)體對象。
由于ARX提供的acedEntSel()函數(shù)返回的點(diǎn)不一定是線位的起點(diǎn),本程序用AcDb庫提供的應(yīng)用類函數(shù)AcDbCurve通過以下方法獲得設(shè)計(jì)線位的起點(diǎn)坐標(biāo)。程序如下:
通過比較DIST1與DIST2大小來確定所選擇的線位的起始點(diǎn)。
由于PLINE線的復(fù)雜性,根據(jù)其函數(shù)表達(dá)式來計(jì)算每一點(diǎn)切線將比較復(fù)雜,根據(jù)里程通過AcDb庫函數(shù)得到該里程處的坐標(biāo),再將里程加上一個(gè)微小量,得到該里程處的另一坐標(biāo),由兩點(diǎn)坐標(biāo),可確定該里程處的切線方向。具體程序如下:
在AutoCAD中加載本程序后界面如圖1、圖2,讀入斷面數(shù)據(jù)后的展點(diǎn)圖見圖3,疊加地形圖的展點(diǎn)圖見圖4。
圖1 加載本程序后啟動(dòng)界面
圖2 加載本程序后界面
圖3 讀入斷面數(shù)據(jù)后的展點(diǎn)圖
圖4 疊加地形圖后的展點(diǎn)圖
在道路工程測量中,高程測量包括地形散點(diǎn)、路面方格水準(zhǔn)、管井標(biāo)高、縱橫斷面測量等??v橫斷面數(shù)據(jù)測量是其中工作量很大的一項(xiàng)工作,一條 10 km的道路,涉及縱橫斷面數(shù)據(jù)近上萬點(diǎn),由于數(shù)據(jù)量大,如何保證縱橫斷面數(shù)據(jù)與地形散點(diǎn)、路面方格水準(zhǔn)、管井標(biāo)高等匹配,給數(shù)據(jù)錄入和檢查帶來很大工作量。
利用本程序可以實(shí)現(xiàn)縱橫斷面數(shù)據(jù)在線位圖上的快速展點(diǎn),結(jié)合縱橫斷面圖形,可以直觀地了解各斷面的走勢及數(shù)據(jù)中的異常點(diǎn),在道路工程的斷面數(shù)據(jù)檢查中,及時(shí)發(fā)現(xiàn)數(shù)據(jù)中的錯(cuò)誤,給斷面數(shù)據(jù)檢查工作帶來了方便,本程序已經(jīng)在中環(huán)線浦東段等一些道路工程中進(jìn)行了應(yīng)用,收到了較好的效果,在道路工程的數(shù)據(jù)檢查中比較實(shí)用。
[1]黃維通.Visual C++面向?qū)ο笈c可視化程序設(shè)計(jì)[M].北京:清華大學(xué)出版社,2000.
[2]李世國.Auto CAD高級開發(fā)技術(shù)ARX編程及應(yīng)用[M].北京:機(jī)械工業(yè)出版社,1999.
[3]梁雪春,崔洪斌,吳義忠.Autolisp實(shí)用教程[M].北京:人民郵電出版社,1998.
[4] 余承飛,方勇.AutoCAD2000二次開發(fā)技術(shù)(ObjectARX)[M].北京:人民郵電出版社,1999.
[5] 張正祿.工程測量學(xué)[M].武漢:武漢大學(xué)出版社,2002.
[6]CJJ8-99.城市測量規(guī)范[S].