解析AutoCAD軟件道路斷面圖繪制技術論文
1 CAD常見的二次開發(fā)手段
CAD 軟件二次開發(fā)是指在現有的軟件基礎上,各用戶為提高軟件的使用效率,讓軟件更加貼合用戶的實際需求,而進行功能定制化的開發(fā)工作。其主要目的是為讓CAD 軟件的功能最大化利用起來,實現用戶的個性化需求。CAD 軟件為用戶提供的常見二次開發(fā)手段有以下幾種:
1) 函數庫形式,主要是利用CAD 提供的編程環(huán)境和基于函數庫的API 接口,用戶通過編寫程序來實現對AutoCAD 開發(fā)的方法,可實現在無CAD 環(huán)境下運行,但該法具有一定的局限性,無法充分發(fā)揮CAD 的系統(tǒng)性能。另外,可以實現界面定制,擴充CAD功能,但只能在CAD 系統(tǒng)內運行。
2) ActiveX Automation 形式,它是建立在COM 基礎之上,由OLE Automation 發(fā)展而來的,其核心技術是允許一個應用程序操作另一個應用程序,是一種比較成熟方便且實用的技術,在實際開發(fā)中得到了廣泛的運用。
2 CAD 開發(fā)模式
AutoCAD 公司為了滿足廣大用戶對軟件功能的定制功能要求,針對各類客戶的需求提供了多種形式的二次開發(fā)工具,如AutoLISP,VBA,Object ARX 等開發(fā)工具。用戶可根據自己的實際情況選擇合適的開發(fā)工具進行二次開發(fā),以滿足設計生產的需要,實現圖形繪制的快速化提高工作效率。針對道路勘測階段對設計的重要性,確保斷面圖繪制的快速和高效十分必要。下面介紹幾種常用的二次開發(fā)模式,并結合測繪行業(yè)的需求特點進行總結。
1) VBA( Visual Basic for Applications) 開發(fā)模式,它被集成到AutoCAD 2000 中,打通了用戶訪問CAD 中豐富技術框架的全新通道。VBA 可用通過ActiveX 接口實現與CAD 的通信,并能夠訪問和控制CAD 所有圖形對象和非圖形對象,包括這些對象的方法和屬性等。由于VBA 是由VB 發(fā)展而來,都是面向對象編程,與其他程序語言相比,具有更簡單,更易學等特點。因此,在測繪行業(yè)內運用較為廣泛,二次開發(fā)的測繪案例較多。但VBA 開發(fā)具有交互性差,不能直接編譯等缺點。
2) Object ARX 開發(fā)模式,Object ARX 是Autodesk 公司針對AutoCAD 平臺上的二次開發(fā)而推出的一個開發(fā)軟件包,它提供了以C + + 為基礎的面向對象的開發(fā)環(huán)境及應用程序接口,能真正快速的訪問AutoCAD 圖形數據庫。與以往的AutoCAD 二次開發(fā)工具Auto LISP 和ADS 不同,Object ARX 應用程序是一個DLL( 動態(tài)鏈接庫) ,共享AutoCAD 的地址空間,對AutoCAD 進行直接函數調用。所以使用ARX 編程的函數的執(zhí)行速度得以大大提高。
ARX 類庫采用了標準的C + + 類庫的封裝形式,這也大大提高了程序員編程的可靠度和效率。通過ARX 定義的外部命令,可以像CAD 內部命令一樣執(zhí)行,LISP 所調用,具有可封裝性、可繼承性、多態(tài)性等特點。因此,廣泛被專業(yè)軟件開發(fā)公司用于模塊定制與升級等商業(yè)開發(fā)。但只有具備了相關專業(yè)軟件開發(fā)知識和系統(tǒng)的學習才能掌握這一開發(fā)技術,對于普通測繪工作者來講具有相當大的難度。
3) Auto LISP 開發(fā)模式,LISP 語言是一種針對擴充及自訂AutoCAD函數機能而產生的,它擅于處理串行文字,于20 世紀50 年代末期出現。隨著Autodesk 公司不斷改進,推出了新的版本VisualLISP( VLISP) ,它是Auto LISP 的換代版本,與老式LISP 語言相比,具有更加快速便捷的優(yōu)點。本身提供了一個完整的開發(fā)環(huán)境,擁有一個交互式的編譯平臺,使用戶在編寫程序時更加便捷高效。作為通用LISP 語言小子集,它為用戶提供了眾多的功能函數,用戶只需直接調用函數即可實現大部分的CAD 圖形繪制功能,編寫時按照其語法慣例和規(guī)則,即可實現靈活的程序開發(fā)。另外,VLISP 還提供了用于發(fā)布獨立應用程序的工具,保障了程序的安全性和密封性;赩LISP 開發(fā)出的應用程序具有相對獨立性的特點,與Object ARX 應用程序共享CAD 地址空間不同,當程序運行一旦出現錯誤或失敗等問題,不會對CAD 自身進程造成影響。加之具有開發(fā)周期短,語言簡單易學,十分受廣大測繪工作者的歡迎,尤其是程序開發(fā)的初學者。
3 道路斷面繪制程序開發(fā)
測繪行業(yè)與設計行業(yè)的聯系十分緊密,基于CAD 在設計行業(yè)的廣泛應用,CAD 對于測繪行業(yè)人員來說十分重要。尤其是在勘測單位,地形圖與道路斷面數據是設計的基礎性數據。道路的縱橫斷面圖主要是由外業(yè)采集的地面線組成,各斷面按照樁號的大小一一對應,斷面形態(tài)直接反映現場道路走向的地形變化情況。為了能夠準確反映出現場的'地形狀況,在斷面采集時,除了對整數樁號( 一般整20 m) 的斷面進行采集外,還需要對地形起伏較大的地段進行一定加樁,這樣造成經過不同地形的斷面數量差距往往很大。由于每個斷面的數據都不一樣,要完成一個道路勘測項目的斷面繪制內業(yè)任務將十分繁重。
3. 1 開發(fā)工具的選擇
針對斷面圖繪制開發(fā)自動化繪制程序十分必要,根據上述CAD 提供的幾種開發(fā)模式優(yōu)缺點,結合道路斷面圖繪制的特點,本文認為采用VLISP 和VBA 的開發(fā)工具進行二次開發(fā)具有優(yōu)勢。主要原因有兩個:
1) 根據測繪行業(yè)自身屬于基礎服務性的特點,尤其是在勘測領域,主要任務是提供基礎數據,功能相對單一,這就決定了不需要大型的專業(yè)程序,在道路斷面繪制程序上更是如此,要求程序具備按照規(guī)范要求能夠自動化完成斷面圖繪制即可。
2) 測繪從業(yè)者大多沒有接受過專業(yè)的軟件開發(fā)培訓,尤其是在一線的測量人員,Object ARX 的開發(fā)模式往往需要更系統(tǒng)的軟件開發(fā)知識儲備,VBA 和VLISP 的開發(fā)工具更為簡單,語言基礎要求較低,通過自學即可掌握相關的開發(fā)技術。
3. 2 技術要點分析
雖然根據工程性質的不同,對斷面圖繪制要求會有所不同,但在基本框架和整體要求上基本一致,原理性的東西并沒有變,通常一個完整的斷面圖包括: 坐標軸、斷面線、基本坐標格網、輔助坐標格網、比例尺、工程信息等內容。按照規(guī)范規(guī)定,線路縱斷面采用直角坐標法繪制,以里程為橫坐標,以高程為縱坐標。里程比例尺常采用1∶ 2 000 和1∶ 1 000,為突出地形起伏,高程比例尺通常為里程比例尺的10 倍~ 20 倍。橫斷面一般選在里程樁和線路橫向地形變化明顯處,在大中小橋頭、隧道洞口等地適當加密,線路的縱橫比例尺一般采用1∶ 100 或1∶ 200。在CAD 平臺下繪制時首先是要建立相應的圖層,分別用不同顏色和線型加以區(qū)分,以便于用戶對斷面線、格網線、圖框線等信息判斷。然后是建立相應的圖框和格網,格網的作用是為了方便用戶能夠在圖紙上直接量取斷面的距離和高程信息。接著就是要將項目的基本信息進行錄入,主要是項目的人員信息和單位信息。最后,要完成斷面線的繪制,將地面特征點逐一展現在圖上并連線,即繪出斷面圖。
斷面圖繪制程序設計主要技術難點在于如何根據地面特征點高程的變化來確保合理容納適量的斷面線。因為,通常一張斷面圖只能容納有限的斷面線,要確保斷面線既不超出圖框范圍又不造成空間浪費,需要采取合理的算法來進行約束。根據本文的研究和實驗,可采用計算每個斷面最大高差的形式來確定每條斷面的占用空間,這樣就可準確計算出各斷面圖容納的斷面梳理。
4 結語
道路斷面圖繪制是道路勘測的基本任務,目前對斷面圖繪制程序的開發(fā)案例也比較多,但多數只局限于單位的內部利用,各單位開發(fā)的繪圖程序只針對本單位所涉及的業(yè)務種類,并不具有通用性,如何開發(fā)出具通用性的繪圖程序將是日后的一個方向。作者也在積極做這方面的嘗試,嘗試用C# 語言和腳本技術結合的方法進行程序開發(fā),使得程序功能更加完善,能夠脫離CAD 環(huán)境運行,已有初步成果,將在日后的論文中發(fā)表。
【解析AutoCAD軟件道路斷面圖繪制技術論文】相關文章:
軟件技術專業(yè)論文致謝(通用8篇)04-20
道路橋梁技術求職簡歷03-04
道路設計論文致謝04-20
軟件技術委托開發(fā)合同09-25
軟件技術專業(yè)怎么樣03-18
軟件工程論文開題報告01-25
應用軟件技術服務合同11-27
軟件工程論文開題報告范文01-25
軟件工程論文的開題報告07-31
江西軟件職業(yè)技術大學怎么樣07-29