李寧 賈敬鵬 田智雁 楊雁斌
摘要:通過規(guī)范的要求,說明設(shè)計人員在瀝青路面病害分布圖制圖過程中遇到的技術(shù)難題。介紹了CAD腳本語言的定義以及在國內(nèi)外的研究應(yīng)用。以工程設(shè)計實例闡述了CAD腳本語言在瀝青路面病害調(diào)查中的應(yīng)用,解決了瀝青路面病害設(shè)計的制圖與批量打印問題,減輕制圖工作的強度,提高制圖工作的質(zhì)量和速度。
關(guān)鍵詞:CAD腳本語言;瀝青路面病害;分布圖
中圖分類號:TP302.4 文獻(xiàn)標(biāo)識碼:B
文章編號:1009-3044(2022)17-0104-03
1引言
XX省道養(yǎng)護(hù)設(shè)計項目位于云南省曲靖市境內(nèi),起點為K0+000,止點為K117+608,全長117.608公里。全線為二級公路,路面寬度8.5米,設(shè)計時速40km/h。本項目為云南省公路網(wǎng)規(guī)劃的重要路段,能更加完善區(qū)域路網(wǎng)結(jié)構(gòu),為當(dāng)?shù)氐牡V產(chǎn)資源運輸提供了更便捷、快速的通道。
本道路使用年限較長,因及時進(jìn)行了全線日常養(yǎng)護(hù),全線總體路面技術(shù)狀況較好,部分路段因沿線煤礦車輛較多產(chǎn)生了不同程度的路面病害;部分過村鎮(zhèn)路段水溝、路緣石缺失,路面排水不暢,路面破損較為嚴(yán)重。上述情況嚴(yán)重制約了公路沿線村鎮(zhèn)的經(jīng)濟(jì)發(fā)展、人民群眾的便捷出行,極不適應(yīng)經(jīng)濟(jì)社會發(fā)展的需求,急需盡快改善路段行車環(huán)境。
在《公路瀝青路面養(yǎng)護(hù)設(shè)計規(guī)范》(JGT 5421-2018)中明確要求在瀝青路面養(yǎng)護(hù)工程施工圖設(shè)計文件當(dāng)中[1],應(yīng)包括路面病害調(diào)查表和路面病害分布圖。本瀝青路面養(yǎng)護(hù)設(shè)計項目具有涉及的路線長,病害類型多樣,病害分布零散等特點。設(shè)計人員在繪制路面病害圖紙時,就會有大量煩瑣重復(fù)性的工作,嚴(yán)重制約了設(shè)計項目的整體工作進(jìn)度,設(shè)計人員迫切需要高效的解決方案。
2 CAD腳本語言研究概述
CAD腳本語言實際上就是CAD的命令集,能夠?qū)⒅貜?fù)性的操作以命令行的形式集中在一起,使得重復(fù)性的操作變得簡單高效,大量減輕設(shè)計人員的工作量,顯著提高制圖的進(jìn)度和質(zhì)量。
CAD腳本語言是讓工作流程自動化最簡單的方式之一。對于設(shè)計人員來說,只是將平時與CAD的交互命令操作轉(zhuǎn)變?yōu)槟_本文件(將命令行文本另存為.scr文件),跟隨CAD的操作提示就可以完成命令行的編寫,不需要學(xué)習(xí)一種新的編程語言語法結(jié)構(gòu),學(xué)習(xí)的難度較小。
CAD腳本語言是內(nèi)置在AutoCAD軟件內(nèi)部的功能,因此不需要額外安裝軟件[2],也不需要在軟件安裝新的功能或插件,軟件功能需要較小;而且CAD腳本語言僅僅是較快地執(zhí)行文本命令,對于計算機的硬件要求較低,原有的計算機就可以滿足要求。
張武昌運用AutoCAD腳本命令實現(xiàn)溝渠縱斷面的自動化繪制,采用多段華線命令pline繪制了原始地面線、設(shè)計溝底線;采用文本命令text繪制了樁號、地面高程、溝底設(shè)計高程。該方法廣泛應(yīng)用于多個水利工程項目設(shè)計當(dāng)中[2]。
原桂海,劉標(biāo)林采用CAD腳本技術(shù)在道路工程設(shè)計中繪制了道路縱斷面圖和橫斷面圖。在縱斷面圖的繪制當(dāng)中,作者首先設(shè)置環(huán)境變量,然后采用圖層命令layer和多段線命令pline,分別繪制原地面線、設(shè)計路基線、設(shè)計路面線;采用文本命令text標(biāo)注原地面高程、路基設(shè)計高程、路面設(shè)計高程、挖填高度。在道路橫斷面圖的繪制當(dāng)中,作者首先設(shè)置環(huán)境變量,然后采用樣式命令style、圖層命令layer、多段線命令pline分別繪制設(shè)計地面線、原地面線、各橫斷圖道路中線;采用樣式命令style、文本命令text進(jìn)行標(biāo)注[3]。
梁昭陽采用AutoCAD腳本與C#開發(fā)了道路縱橫斷面圖的自動化繪制程序。程序開發(fā)的具體思路為:填寫項目基本信息、斷面數(shù)據(jù)導(dǎo)入、數(shù)據(jù)處理轉(zhuǎn)換、導(dǎo)出SCR腳本文件。作者對于程序的可行性進(jìn)行了工程實例驗證。經(jīng)驗證,生成的圖面信息顯示完整,整張圖容納的斷面線數(shù)量合理,沒有產(chǎn)生斷面線超出圖幅的情況[4]。
張曉琪等研究了Auto CAD二次開發(fā)中腳本定制及應(yīng)用。采用腳本語言建立CAD幻燈片、調(diào)用CAD幻燈片、播放多個CAD幻燈片。為減少工程中重復(fù)畫圖、企業(yè)圖形產(chǎn)品推介與產(chǎn)品展示以及教學(xué)中圖形過程的演示等提供了快捷方便的有效方法[5]。
以上的文獻(xiàn)從不同的專業(yè)、不同的方向研究了CAD腳本語言在實際工作、科研當(dāng)中的應(yīng)用,為本文的技術(shù)難題提供了較好的研究思路。
3工作流程設(shè)計
CAD腳本語言應(yīng)用于瀝青路面病害調(diào)查當(dāng)中,需要定義工作流程:路面病害人工調(diào)查->百米矩形框->路面病害矩形框->批量打印,這樣就可以進(jìn)行有效的分工合作。
根據(jù)《公路瀝青路面養(yǎng)護(hù)設(shè)計規(guī)范》(JTG 5421-2018)附錄A瀝青路面養(yǎng)護(hù)設(shè)計數(shù)據(jù)調(diào)查方法,進(jìn)行路面病害人工調(diào)查。在電子表格中詳細(xì)記錄各個路面病害的位置(包括路面橫向位置和縱向樁號),類型(龜裂、塊狀裂縫、縱向裂縫、橫向裂縫、坑槽、松散、沉陷、車轍、波浪擁包、泛油、塊狀修補、橫向裂縫修補、縱向裂縫修補、唧漿)、嚴(yán)重程度(輕、中、重)以及損壞長度或面積。
在AutoCAD中每一百米畫一個矩形框,并標(biāo)注起止點樁號,用于展示道路的輪廓。
在對應(yīng)樁號的位置畫出病害的矩形框,并標(biāo)注路面病害位置、類型、嚴(yán)重程度及損壞長度或面積,填充不同的圖案以表示不同的路面病害類型。
將百米矩形框和路面病害矩形框一起復(fù)制到相應(yīng)的圖紙框里,并實現(xiàn)批量打印。
在記事本中創(chuàng)建CAD腳本命令行也有語法結(jié)構(gòu)的要求,熟悉這些語法結(jié)構(gòu)將使得腳本文件在CAD調(diào)取過程中少出錯,減少設(shè)計人員進(jìn)行調(diào)試的時間與精力,提高腳本文件的運行效率,真正提高制圖的質(zhì)量和進(jìn)度,下面是幾條較為重要的規(guī)則:
(1)CAD腳本文件必須以scr為文件擴展名,否則CAD不會進(jìn)行識別。
(2)記事本當(dāng)中的空格相當(dāng)于回車鍵,可以在CAD命令行中測試需要空格的數(shù)量。
(3)CAD腳本語言不分命令的大小寫,但盡量使用命令全稱,以方便CAD進(jìn)行識別。
(4)CAD腳本文件的最后一行應(yīng)是空行,提示CAD命令結(jié)束。
(5)為了更好地方便其他人理解CAD腳本命令行,可增加注釋行,以;開頭。
4瀝青路面病害制圖
4.1 百米矩形框的繪制
在繪制百米矩形框之前,需要新建圖層,使用圖層命令layer。在AutoCAD命令行當(dāng)中輸入-plot,就可以以參數(shù)輸入的形式與軟件對話,輸入相應(yīng)的參數(shù)后,就可以達(dá)到新建圖層的目的。
可借助電子表格進(jìn)行腳本語言命令行的創(chuàng)建,以此形成固定的命令結(jié)構(gòu)(圖2),在進(jìn)行別的圖層創(chuàng)建時,只需要修改相應(yīng)的參數(shù)即可生成新圖層。
在設(shè)置完圖層后,還要對百米矩形框的顏色進(jìn)行設(shè)置,語法結(jié)構(gòu)由以下元素構(gòu)成:
colorn
其中color為顏色設(shè)置命令,n為顏色的索引。
百米矩形框的語法結(jié)構(gòu)由以下元素構(gòu)成:
rectang□X1,Y1□X2,Y2
其中rectang為矩形框命令,□為空格,X1,Y1為矩形框的第一個角點XY坐標(biāo),X2,Y2為對角線角點XY坐標(biāo)。X坐標(biāo)可直接使用道路的樁號,Y坐標(biāo)可使用路面寬度。X1為百米矩形框的起點樁號,X2為百米矩形框的止點樁號;Y1為百米矩形框的起點寬度0,Y2為百米矩形框的止點寬度即路面寬度;X坐標(biāo)與Y坐標(biāo)之間需要使用英文逗號隔開。
可借助電子表格創(chuàng)建百米矩形框命令行的元素,使用CONCATENATE命令將元素連接起來(圖2),形成完整的命令行。將這些命令行文本拷貝至記事本當(dāng)中,另存為.scr文件。在AutoCAD當(dāng)中,使用scr命令調(diào)取百米矩形的腳本文件,就可以將本項目的所有百米矩形框繪制完畢。
4.2 起止點標(biāo)注文本繪制
起止點標(biāo)注文本的語法結(jié)構(gòu)由以下元素構(gòu)成:
text□X1,Y1□H□A□C
其中text為文本框命令,X1,Y1為文本放置的XY坐標(biāo),H為文本高度,A為文本的角度,C為文本內(nèi)容。X1為百米矩形框的起點樁號,Y1為百米矩形框的下面相應(yīng)位置;X坐標(biāo)與Y坐標(biāo)之間需要使用英文逗號隔開。
可借助電子表格創(chuàng)建百米矩形框命令行的元素,使用CONCATENATE命令將元素連接起來(圖3),形成完整的命令行。將這些命令行文本拷貝至記事本當(dāng)中,另存為.scr文件。在AutoCAD當(dāng)中,使用scr命令調(diào)取文本標(biāo)注的腳本文件,就可以將本項目的所有文本標(biāo)注繪制完畢。
4.3 路面病害矩形框的繪制
與百米矩形框的繪制類似,采用相同的語法結(jié)構(gòu)創(chuàng)建路面病害矩形框的命令行。需要注意的是,路面病害的兩個對角點的XY坐標(biāo),需要現(xiàn)場調(diào)查人員將路面病害的縱向起止點樁號,橫向位置準(zhǔn)確記錄下來,這樣才能實現(xiàn)路面病害矩形框的準(zhǔn)確定位。
4.4 路面病害文本標(biāo)注的繪制
與文本標(biāo)注的繪制類似,采用相同的語法結(jié)構(gòu)創(chuàng)建路面病害文本標(biāo)注的命令行。需要注意的是,需要準(zhǔn)確定位文本的XY坐標(biāo),還有就是現(xiàn)場人員調(diào)查要準(zhǔn)確地記錄路面病害的類型,長度或面積,這樣才能準(zhǔn)確地描述路面病害。
在對所有路面病害進(jìn)行手動填充病害圖案后,就形成了線性的瀝青路面病害分布圖(圖4)。
5圖紙批量打印
在繪制完路面病害分布圖后,還需要將其放到標(biāo)準(zhǔn)圖框里??砂凑站匦慰蚺c標(biāo)準(zhǔn)圖框的關(guān)系調(diào)整比例尺大小,然后手動將路面病害分布圖放到標(biāo)準(zhǔn)圖框中。
在AutoCAD命令行當(dāng)中輸入-plot,就可以以參數(shù)輸入的形式與軟件對話,輸入相應(yīng)的參數(shù)后,就可以達(dá)到配置打印設(shè)置的目的。
圖5為plot命令的全部設(shè)置,除了窗口的左下角需要每次打印修改外,其他的選擇只需要設(shè)置一次,后面所有命令都可以沿用。
各個標(biāo)準(zhǔn)圖框左下角的坐標(biāo),也可以借助電子表格創(chuàng)建出來。確定第一個標(biāo)準(zhǔn)圖框的XY坐標(biāo)后,其他圖框左下角的X值都是第一個標(biāo)準(zhǔn)圖框的X值加上相應(yīng)的數(shù)值(圖紙尺寸的n倍,如55*420),Y值可以保持不動。將這些命令行文本拷貝至記事本當(dāng)中,另存為.scr文件。在AutoCAD當(dāng)中,使用scr命令調(diào)取批量打印的腳本文件,就可以將本項目的所有路面病害圖框打印完畢。最終生成的路面病害分布圖如圖6所示。
6結(jié)束語
1)CAD腳本語言使得重復(fù)性的操作變得簡單高效,大量減輕設(shè)計人員的工作量,顯著提高制圖的進(jìn)度和質(zhì)量。
2)瀝青路面病害分布圖自動化出圖的工作流程為:瀝青路面人工調(diào)查->百米矩形框的繪制->路面病害矩形框的繪制->批量打印。
3)借助電子表格創(chuàng)建腳本語言命令行,使得腳本語言更加高效、自動化。
參考文獻(xiàn):
[1] JTG 5421-2018.公路瀝青路面養(yǎng)護(hù)設(shè)計規(guī)范.[S].
[2] 張武昌.運用Autocad腳本命令實現(xiàn)溝渠縱斷面繪制[J].科技視界,2012(23):81-83.
[3] 原桂海,劉標(biāo)林.淺談CAD腳本技術(shù)在道路工程設(shè)計中的應(yīng)用[J].中國水運(理論版),2007(10):55-58.
[4] 梁昭陽.基于AutoCAD腳本與C#的縱橫斷面圖自動化繪制程序開發(fā)與應(yīng)用[J].福建建材,2017(9):10-13.
[5] 張曉琪,唐天國,胡振,等.Auto CAD二次開發(fā)中腳本定制及應(yīng)用[J].電腦知識與技術(shù),2019,15(9):92-94.
收稿日期:2021-12-16
作者簡介:李寧(1984—),男,云南昆明人,碩士,高級工程師,主要研究方向為瀝青路面設(shè)計。