王保國(guó)
(蚌埠市勘測(cè)設(shè)計(jì)研究院,安徽 蚌埠 233000)
基于AutoCAD的地塊宗地成果快速輸出方法與實(shí)現(xiàn)
王保國(guó)*
(蚌埠市勘測(cè)設(shè)計(jì)研究院,安徽 蚌埠 233000)
采用AutoCAD作為農(nóng)村土地承包經(jīng)營(yíng)權(quán)確權(quán)登記項(xiàng)目數(shù)據(jù)采集與制圖工具。為了準(zhǔn)確快速獲取地塊宗地成果資料,本文嘗試運(yùn)用AutoCAD VBA二次開(kāi)發(fā)技術(shù)編制軟件工具予以實(shí)現(xiàn)。通過(guò)遍歷全部地塊對(duì)象,自動(dòng)提取圖形要素,讀取其擴(kuò)展屬性中地塊權(quán)屬數(shù)據(jù),并逐地塊輸出到Word文檔中,從而實(shí)現(xiàn)地塊宗地成果資料的快速輸出,提高了工作效率,保證了數(shù)據(jù)的準(zhǔn)確性。
AutoCAD;數(shù)據(jù)組織;擴(kuò)展屬性;地塊權(quán)屬
農(nóng)村土地承包經(jīng)營(yíng)權(quán)確權(quán)登記是推動(dòng)農(nóng)村土地流轉(zhuǎn),培育農(nóng)業(yè)新型經(jīng)營(yíng)主體,發(fā)展農(nóng)業(yè)適度規(guī)模經(jīng)營(yíng)的重要工程,關(guān)系廣大農(nóng)民切身的利益,因而備受社會(huì)廣泛關(guān)注。其主要工作包括獲取地塊信息,弄清、搞準(zhǔn)農(nóng)戶(hù)承包地塊面積和地塊四至,完善農(nóng)村土地承包合同,建立農(nóng)村土地承包經(jīng)營(yíng)權(quán)登記簿,頒發(fā)統(tǒng)一規(guī)范的農(nóng)村土地承包經(jīng)營(yíng)權(quán)證書(shū),并進(jìn)行登記資料歸檔,將確權(quán)登記頒證成果納入信息化管理系統(tǒng)。作為一項(xiàng)復(fù)雜的系統(tǒng)工程,其涉及影像獲取、圖形數(shù)據(jù)獲取、權(quán)屬調(diào)查、屬性數(shù)據(jù)整理、資料整理建庫(kù)等多個(gè)環(huán)節(jié)。尤其在工程后期,包含多種文檔資料的整理,任務(wù)繁雜,人工完成,耗時(shí)耗力,且極易出錯(cuò)。
AutoCAD作為一款功能齊全、應(yīng)用廣泛、操作友好的通用圖形軟件,具有強(qiáng)大的繪圖功能[1]。張帆[2]等對(duì)AutoCAD VBA二次開(kāi)發(fā)技術(shù)進(jìn)行了詳細(xì)的論述,通過(guò)多個(gè)實(shí)例程序貫通AutoCAD程序設(shè)計(jì)各個(gè)技術(shù)環(huán)節(jié),系統(tǒng)介紹了VBA的豐富的開(kāi)發(fā)接口。錢(qián)業(yè)宏[3]重點(diǎn)對(duì)AutoCAD VBA開(kāi)發(fā)中的擴(kuò)展屬性的應(yīng)用做了深入探討。
農(nóng)村土地承包經(jīng)營(yíng)權(quán)確權(quán)登記項(xiàng)目中,常采用AutoCAD作為數(shù)據(jù)采集及制圖軟件。本文嘗試以AutoCAD VBA二次開(kāi)發(fā)技術(shù),開(kāi)發(fā)實(shí)用工具,實(shí)現(xiàn)將采集到的地塊圖形及權(quán)屬信息輸出到Word文檔中,從而快速完成地塊宗地成果資料的生產(chǎn)整理工作。
2.1 數(shù)據(jù)組織
在AutoCAD中,軟件本身只管理圖形數(shù)據(jù),而不管理及存儲(chǔ)屬性數(shù)據(jù)。但留有擴(kuò)展屬性數(shù)據(jù)接口,可以通過(guò)二次開(kāi)發(fā)的方式實(shí)現(xiàn)對(duì)屬性數(shù)據(jù)的存儲(chǔ)及管理功能。AutoCAD擴(kuò)展屬性采用組碼[4]的格式添加到圖形數(shù)據(jù)中,因此可以通過(guò)寫(xiě)入、讀取圖形對(duì)象的擴(kuò)展屬性,實(shí)現(xiàn)地塊權(quán)屬信息在AutoCAD中的存儲(chǔ)與管理。在AutoCAD VBA二次開(kāi)發(fā)技術(shù)中,通過(guò)實(shí)體對(duì)象的SetXData和GetXData接口實(shí)現(xiàn)擴(kuò)展屬性的寫(xiě)入與讀取[5]。圖1,為一個(gè)地塊的權(quán)屬信息,主要包括行政區(qū)、行政區(qū)代碼、戶(hù)主、地塊編號(hào)、四至及土地性質(zhì)等。
圖1 地塊權(quán)屬信息
2.2 數(shù)據(jù)預(yù)處理
在進(jìn)行地塊屬性數(shù)據(jù)輸出前,首先對(duì)成果數(shù)據(jù)進(jìn)行檢查預(yù)處理,主要包括:
(1)屬性缺失檢查
屬性數(shù)據(jù)缺失檢查包括無(wú)屬性數(shù)據(jù)檢查和屬性數(shù)據(jù)個(gè)數(shù)缺失檢查兩方面。無(wú)屬性數(shù)據(jù)檢查是指檢查地塊對(duì)象是否含有擴(kuò)展屬性,及所含擴(kuò)展屬性是否為地塊權(quán)屬信息。屬性數(shù)據(jù)個(gè)數(shù)缺失檢查是檢查地塊對(duì)象所含權(quán)屬信息是否存在個(gè)數(shù)缺失等錯(cuò)誤。
(2)屬性錯(cuò)誤檢查
屬性錯(cuò)誤檢查是對(duì)地塊的屬性信息的正確性進(jìn)行檢查,包括權(quán)屬信息完整性、正確性等。
檢查完成后,對(duì)錯(cuò)誤項(xiàng)或疑似錯(cuò)誤項(xiàng)進(jìn)行標(biāo)注,提醒進(jìn)行處理。
2.3 技術(shù)路線
按照農(nóng)村土地承包經(jīng)營(yíng)權(quán)確權(quán)登記相關(guān)技術(shù)要求,確定需要輸出到地塊宗地資料文檔的屬性數(shù)據(jù)。遍歷AutoCAD文件中地塊對(duì)象,讀取要求輸出的屬性信息,并提取出地塊圖形數(shù)據(jù)。將提取的圖形文件(圖片)和屬性數(shù)據(jù),按照要求格式輸出到Word文檔中。一個(gè)地塊輸出完成后,讀取下一個(gè)地塊,直至全部輸出完畢,實(shí)現(xiàn)地塊宗地成果資料的生產(chǎn)整理。
本文所述輸出方法的實(shí)現(xiàn),主要包括三個(gè)技術(shù)環(huán)節(jié):地塊圖形的圖片輸出、地塊屬性數(shù)據(jù)的讀取及地塊宗地成果資料的生成。
3.1 地塊圖形的圖片輸出
農(nóng)村土地承包經(jīng)營(yíng)權(quán)權(quán)屬調(diào)查成果之一,是由帶權(quán)屬信息且互不重疊的地塊多邊形組成的AutoCAD文件。如圖2所示,為某村的地塊成果圖,共有10 819個(gè)地塊對(duì)象。要將大量的地塊圖形逐個(gè)輸出到Word文檔中,人工操作顯然難以完成。本文采用VBA二次開(kāi)發(fā)技術(shù),通過(guò)文檔布局的PlotToFile方法來(lái)實(shí)現(xiàn)地塊圖形的提取與輸出工作。首先,讀取當(dāng)前地塊,然后將地塊對(duì)象復(fù)制到新建文檔中,再用PlotToFile方法將地塊輸出為圖片。以某個(gè)地塊對(duì)象為例,輸出圖片為“d:1.jpg”的主要程序代碼為:
Dim objPlot As AcadPlot ’定義布局對(duì)象
objPlot.PlotToFile "d:1.jpg","PublishToWeb JPG.pc3"
圖2 地塊成果圖
3.2 地塊屬性的讀取
按照相關(guān)技術(shù)要求,本文制作的實(shí)用工具主要讀取地塊權(quán)屬信息中的地塊編號(hào)、地塊名稱(chēng)、實(shí)測(cè)面積及四至數(shù)據(jù)。AutoCAD擴(kuò)展屬性的讀取采用實(shí)體對(duì)象的GetXData方法,并將讀取的當(dāng)前地塊權(quán)屬數(shù)據(jù)存儲(chǔ)在自定義結(jié)構(gòu)中。
3.3 地塊宗地成果資料的生成
地塊宗地成果資料要求為Word格式,包含地塊圖形及相關(guān)權(quán)屬信息。將AutoCAD數(shù)據(jù)輸出到Word中,首先要獲取Word對(duì)象,并啟動(dòng)Word應(yīng)用程序。在AutuoCAD VBA二次技術(shù)中,啟動(dòng)Word程序,并新建一個(gè)文檔文件的主要代碼如下:
Dim objWord As Word.Application
Dim objWordDocument As Word.Document
Set objWord=New Word.Application
Set objWordDocument=objWord.Documents.Add
objWord.Visible=True
然后通過(guò)在Word中按照要求添加表格,并將之前提取的地塊圖形圖片和讀取的屬性數(shù)據(jù)輸出到指定位置表格中。遍歷所有地塊對(duì)象,從而完成地塊權(quán)屬信息的輸出工作,如圖3所示為部分地塊輸出后的文檔資料成果。
圖3 地塊信息表
地塊宗地成果資料是農(nóng)村土地承包經(jīng)營(yíng)權(quán)確權(quán)登記工程的重要成果之一,工作量巨大。本文所述方法開(kāi)發(fā)的自制工具,操作簡(jiǎn)單,能夠快速批量的提取地塊權(quán)屬信息并將之輸出到Word文檔中。整個(gè)輸出過(guò)程自動(dòng)化程度高,具有高效率、高準(zhǔn)確性的特點(diǎn)。在農(nóng)村土地承包經(jīng)營(yíng)權(quán)確權(quán)登記工程地塊宗地成果資料輸出的實(shí)際生產(chǎn)中,提高工作效率和經(jīng)濟(jì)效益。
[1] 崔洪波,李井杰,賀智. 城市大比例尺CAD數(shù)據(jù)到GIS數(shù)據(jù)的轉(zhuǎn)換[J]. 測(cè)繪與空間地理信息,2011(2).
[2] 張帆. AutoCAD+VBA二次開(kāi)發(fā)教程[M]. 北京:清華大學(xué)出版社.
[3] 錢(qián)業(yè)宏,花向紅. AutoCAD擴(kuò)展數(shù)據(jù)在地形圖建庫(kù)中的應(yīng)用[J]. 城市勘測(cè),2008(1):118~119.
[4] 王建設(shè),時(shí)東玉,禇喆等. AutoCAD二次開(kāi)發(fā)解決二調(diào)中數(shù)據(jù)采集中的問(wèn)題[J]. 現(xiàn)代測(cè)繪,2008(6):44~46.
[5] 劉賀明. AutoCAD在工程測(cè)量中的應(yīng)用[J]. 測(cè)繪與空間地理信息,2011(4):231~232.
[6] 覃茂運(yùn),龍保呈,何一明. 基于地理信息服務(wù)的AutoCAD設(shè)計(jì)模式探討[J]. 城市勘測(cè),2011(4):82~85.
[7] 李胤,楊武年,李麗等. MAPGIS與AutoCAD在礦產(chǎn)資源利用現(xiàn)狀調(diào)查中的應(yīng)用[J]. 金屬礦山,2011(8):116~118.
[8] 李金朋,劉化冰,李新雙. 基于插件式GIS實(shí)現(xiàn)CAD數(shù)據(jù)到GIS數(shù)據(jù)的轉(zhuǎn)換[J]. 測(cè)繪;2011(4):168~170.
Rapid Output Method and Implementation of Parcel Land Parcel Production Based on AutoCAD
Wang Baoguo
(Bengbu Geotechnical Engineering and Surveying Institue,Bengbu 233000,China)
AutoCAD is used as the data acquisition and mapping tool for the registration of rural land contractual management right. In order to obtain accurate and rapid land parcel production data,this paper attempts to use AutoCAD VBA two development techniques to prepare software tools to achieve. By traversing all plots,automatic extraction of graphic elements,read the expansion of land ownership data attributes,and each block is output to the Word document,so as to realize the fast output data of land parcel achievements,improve work efficiency,ensure the accuracy of the data.
AutoCAD;data organization;extended attribute;land ownership
1672-8262(2017)04-122-03
P209
B
2017—06—07
王保國(guó)(1979—),男,高級(jí)工程師,注冊(cè)測(cè)繪師,主要從事測(cè)繪技術(shù)與管理工作。