土地整理規劃設計中多義線長度值快速統計研究
摘要 在AutoCAD的平臺上,利用其嵌入式語言VBA的函式並結合Excel獲取AutoCAD繪製多義線長度值的演算法,完成多義線自動統計到Excel中的二次開發。該研究用於土地整理專案規劃設計中新修排水溝長度值的自動統計,減少了煩瑣的工作量,為進一步實現土地整理專案規劃設計的自動化提供了可能。
關鍵詞 多義線 長度 統計 AutoCAD VBA
中圖分類號:TP39 文獻標識碼:A
近年以來,隨著人口不斷增加與城鎮建設用地的擴充套件,使得土地尤其是耕地相對短缺的問題日益突出,土地開發整理作為補充耕地的主要途徑,是保住“耕地18億畝紅線”***1.2億hm2***和國家糧食安全的主要措施。隨著我國土地整理工作在全國深入開展,國家在土地整理中投入大量的財力、人力、物力,如何提高土地整理中工程量計算的效率以,是目前需要研究的問題之一。目前,在土地整理規劃設計中所用的繪圖軟體主要是AutoCAD系列軟體。其中在進行排水溝規劃設計時,通常是在規劃後逐條點選其屬性統計長度值。如果更改規劃要素,則需要再次重新統計,工作效率低、且易出錯。土地整理專案規劃設計是一項涉及面廣、內容複雜的過程,各類地物資訊影響土地整理規劃設計的各個方面。如何有效快速的在規劃設計中確定規劃要素的基礎資料,如長度值等,本研究進行了一些探索。本文介紹如何利用AutoCAD嵌入式語言VBA***Visual Bacic for Applications***並結合Excel進行二次開發,完成在土地整理專案規劃設計中各新修排水溝多義線長度值的自動統計。
1 程式設計思路流程及資料間相互關係
1.1 程式設計思路及流程
AutoCAD是目前工程圖形中使用最廣泛的計算機處理軟體。在土地整理專案規劃設計中,AutoCAD中用得最多的線是多義線***polyline***,並以此來表示土地整理專案規劃設計專題圖中的大多數規劃要素,如排水溝,農村道路等。在Auto-CAD中某一圖層統計出各多義線的長度,首先確定統計圖層中的物件i***i表示多義線的條數***,然後把圖層中各i長度值i直接自動寫入到Excel單元格中,從而使土地整理規劃設計進一步自動化。開發的程式流程見圖1所示。
1.2 資料間相互關係
多義線屬性資料與Excel單元格資料彼此存在著一定的聯絡。每一條規劃的排水溝多義線的長度值都在Excle單元格中對應著一個相應屬性資料記錄,兩者之間通過對Auto,CADVBA二次開發函式介面呼叫屬性資料建立內在聯絡,可以使規劃人員任意顯示檢查排水溝多義線的長度值。兩者之間通過二次開發程式,把它們聯絡在一起。
2 應用VBA技術進行AutoCAD二次開發
根據以上的二次開發基本思想和資料結構,本研究開發的土地整理專案規劃設計製圖應用程式,可以完成與排水溝類似的規劃製圖多義線長度自動統計,為土地整理專案規劃設計中的工程預算提供科學、準確的基礎資料,並利於土地整理規劃設計人員分析規劃的正確性、合理性,及時的調整規劃設計方案,直至最後形成最佳的土地整理規劃設計方案和規劃專題圖。
2.1 VBA在AutoCAD中的開發特點
AutoCAD VBA允許VBA環境與AutoCAD同時執行,並通過ActiveXAutomation介面對AutoCAD進行程式設計控制,對於非專業開發人員在程式語言選擇上相對其它開發高階語言,如:C、C++等,VBA更易學易掌握,可構成多種使用的專業軟包,0能快速實現特定功能。
2.2 程式程式碼的完成
在AutoCADVBA開發環境中的ThisDrawing模組,首先在使用者窗體中的新修排水溝中新增一些按鈕事件,屬性欄更改名稱為工程統計等按鈕名稱,在其按鈕事件中加入相關程式程式碼,並執行其程式碼,如圖2程式執行介面。相關程式碼較長,本文中省略。
3 程式應用
AutoCAD環境中,實現多義線自動統計的方法簡單描述***1***建立圖層名為新修排水溝;***2***建立多條新修排水溝的多義線段:***3***點選工程統計按鈕***見圖2***;***4***根據點選按鈕提示儲存Excel的統計值的檔案路徑,開啟Excel所得各編號排水溝長度值***見圖3***。圖2程式執行介面中的藍色虛線為擬新修排水溝,旁邊文字為其編號,每個編號對應圖3執行統計結果Excel中的編號長度值,實現其自動統計多義線長度值的功能。
4 結語
基於AutoCAD的自動統計程式,是用其內嵌的開發語VBA,結合Excel進行二次開發,其優點是:在土地整理專案規劃設計中所涉及到的規劃要素為多義線時,能方便快捷的統計出同一圖層中的長度值,為工程造價預算提供科學,準確的基礎資料;其程式佔用記憶體少,執行速度快,簡單實用,符合在土地整理專案規劃設計中的相關要求。