王振輝
(國家測繪局第七地形測量隊,海南???570203)
公路路產(chǎn)是國家財產(chǎn),受國家法律保護,任何單位和個人均不得侵占和破壞。公路作為促進社會經(jīng)濟高速發(fā)展的基礎(chǔ)性設(shè)施,在國民經(jīng)濟中的重要作用日益突出。保護公路路產(chǎn)最重要的方面即是對公路路產(chǎn)進行確權(quán)登記和建檔,它是公路路產(chǎn)管理的前提和基本手段。而公路路產(chǎn)登記資料之一是公路用地權(quán)屬范圍圖,圖中需要標(biāo)注道路中心線的中樁以及對應(yīng)用地范圍線邊樁的坐標(biāo)。公路用地權(quán)屬確認(rèn)的過程十分復(fù)雜,確權(quán)部門因多種因素會經(jīng)常對用地范圍線進行更改,如果通過手工對道路中、邊樁的坐標(biāo)進行標(biāo)注,會因用地范圍線的變更而重復(fù)做很多工作。因此,通過AutoCAD二次開發(fā),運用程序進行中樁和邊樁的坐標(biāo)自動標(biāo)注,能很大程度提高工作效率。
AutoLISP作為通用LISP語言的一個小子集,嚴(yán)格地遵循其語法和慣例,又添加了許多針對AutoCAD的功能。通過AutoLISP,用戶可以運用適合于編寫圖形應(yīng)用程序的強大的高級語言來編寫宏程序和函數(shù),并開發(fā)出各種軟件包。從AutoCAD R14起,Visual LISP就被引入到AutoCAD中,它增強及擴展了AutoLISP,嵌于AutoCAD內(nèi)部,是一種智能型語言。運用Visual LISP可以靈活方便地增加AutoCAD的新命令,幾乎能無限地擴展AutoCAD的功能。Visual LISP沒有特殊的硬件需求,能運行AutoCAD即可運行Visual LISP。
本文將通過一個公路路產(chǎn)登記實例介紹Visual LISP在自動標(biāo)注道路中、邊樁坐標(biāo)工作中的應(yīng)用,通過編寫程序來提高工作效率,避免人工重復(fù)、繁瑣的工作以及避免手工操作引起的遺漏和錯誤。
公路路產(chǎn)登記工作中用地權(quán)屬確認(rèn)的過程往往會因多種因素經(jīng)常變更用地范圍線,如果用手工對道路中、邊樁的坐標(biāo)進行標(biāo)注,會導(dǎo)致大量的重復(fù)工作。另外路產(chǎn)登記的公路往往是幾千米甚至十幾千米,道路中心線中樁的標(biāo)注和其用地范圍線邊樁的坐標(biāo)標(biāo)注,如果按百米來標(biāo)注,其工作量非常大。因此,通過AutoCAD二次開發(fā),運用Visual LISP程序批量自動處理,能很大程度提高工作效率。
本文通過某市縣道X506進行路產(chǎn)登記的工作實例,介紹Visual LISP程序?qū)μ岣呗樊a(chǎn)登記工作效率的貢獻。
本程序有三個子程序,分別是自動計算并標(biāo)注中樁號、求輔助線和用地線交點、用地線坐標(biāo)自動標(biāo)注。
本子程序會生成“道路中心線”、“bak”、“道路樁號”三個圖層。將用戶選取的多線段放入“道路中心線”層并更改屬性。通過用戶輸入的標(biāo)注中樁的間距,由中心線的起點開始計算出中樁的坐標(biāo),并在該坐標(biāo)上標(biāo)注樁號和中樁線,并放入“道路樁號”層。子程序還做了一個為下一步做鋪墊的工作,即沿中樁線的方向作延長線,與用地邊線相交,并將該輔助線放入“bak”層。
本子程序的部分代碼如下:
其中,函數(shù)a-get-Angle是中樁線角度的獲取程序。
本子程序運行后如圖1所示,綠線為道路中心線,紅線為用地范圍線,黑線為輔助線。
圖1 自動標(biāo)注中樁號
本子程序利用上一子程序運行后生成的輔助線,計算其與兩邊用地范圍線的交點坐標(biāo),并寫入文件。這是為下一步的用地范圍線對應(yīng)中樁的邊樁進行坐標(biāo)標(biāo)注做準(zhǔn)備。
本子程序的部分代碼如下:
本子程序利用上一子程序計算出的交點坐標(biāo),對用地范圍線對應(yīng)中樁的邊樁進行坐標(biāo)標(biāo)注。程序先根據(jù)交點坐標(biāo)作用地線的垂線,坐標(biāo)引線是由用戶輸入字體的大小按比例畫,坐標(biāo)文字注記是按坐標(biāo)引線的方向進行標(biāo)注。
本子程序的部分代碼如下:
圖2 成果圖
本實例最后成果如圖2所示(因篇幅原因只顯示部分圖面成果)。由于本程序標(biāo)注的坐標(biāo)是由計算得出并賦值標(biāo)注出來,所以避免了人工標(biāo)注坐標(biāo)時出現(xiàn)捕捉錯點位的情況。
目前,在各工程設(shè)計單位中AutoCAD已經(jīng)得到普及應(yīng)用,Visual LISP對于拓展AutoCAD的功能具有重要意義。本文通過一個公路路產(chǎn)登記實例說明Auto-CAD的二次開發(fā)在實際工作中發(fā)揮著重要的作用,充分說明在工程設(shè)計工作中結(jié)合本專業(yè)要求開發(fā)一定功能的Visual LISP程序可以有效降低工作人員的勞動強度,從而使AutoCAD不僅僅是繪圖工具,而真正成為設(shè)計人員得心應(yīng)手的高效設(shè)計平臺。
[1]李長勛.AutoCAD Visual LISP程序開發(fā)技術(shù)[M].北京:國防工業(yè)出版社,2005
[2]陳伯雄,馮偉.Visual LISP程序設(shè)計—技巧與范例[M].北京:人民郵電出版社,2002
[3]康博創(chuàng)作室.Visual LISP實用教程[M].北京:人民郵電出版社,1999
[4]湯峻.AutoCAD2000高級應(yīng)用與Visual LISP開發(fā)寶典[M].北京:人民郵電出版社,2001
[5]GB/T 20257.1-2007.1 ∶500、1 ∶1000、1 ∶2000 地形圖圖式[S]
[6]米桂杰.AutoCAD在公路路線繪圖中的應(yīng)用[J].企業(yè)技術(shù)開發(fā),2010,29(5)