亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于VBA的土地勘測(cè)定界面積計(jì)算方法*

        2021-04-21 13:40:50謝文珠林童新謝榮安劉桂霞
        地礦測(cè)繪 2021年1期
        關(guān)鍵詞:程序模型

        謝文珠,林童新,謝榮安 ,劉桂霞

        (1.廣東省地質(zhì)測(cè)繪院,廣東 廣州 510800;2.廣州市花都區(qū)地籍測(cè)量隊(duì),廣東 廣州 510800)

        0 引言

        土地勘測(cè)定界是為自然資源管理部門提供用地審批和地籍管理的技術(shù)服務(wù)性工作,其成果的準(zhǔn)確性、規(guī)范性和科學(xué)性是自然資源管理部門土地管理的重要依據(jù)[1]。土地勘測(cè)定界面積量算內(nèi)容主要包括項(xiàng)目用地面積、項(xiàng)目用地占用基本農(nóng)田面積、用地范圍內(nèi)原不同權(quán)屬單位及不同土地利用類型面積。在量算不同權(quán)屬、不同土地利用類型面積的基礎(chǔ)上,分別以市(縣)、鄉(xiāng)(鎮(zhèn))、村(組)為單位按不同的土地利用類型進(jìn)行面積匯總,項(xiàng)目用地若占用基本農(nóng)田,則基本農(nóng)田保護(hù)區(qū)劃內(nèi)的土地和基本農(nóng)田保護(hù)區(qū)劃外的土地應(yīng)分別統(tǒng)計(jì)匯總。

        目前常用的面積統(tǒng)計(jì)匯總方法是利用CASS軟件或者ArcGIS軟件將項(xiàng)目用地紅線與權(quán)屬界線、基本農(nóng)田界線及不同年份的土地利用圖斑等采用人工方式進(jìn)行土地分類面積統(tǒng)計(jì)分析。該方法存在一定的弊端,如:人工統(tǒng)計(jì)分析面積,逐一填入土地地類分類面積匯總表及集體建設(shè)用地變更情況說(shuō)明表,容易產(chǎn)生錯(cuò)漏;一旦源數(shù)據(jù)發(fā)生錯(cuò)誤,則每一步均需重新計(jì)算、重新分類統(tǒng)計(jì),工作量大;不同項(xiàng)目之間不能重復(fù)使用,可移植性差;檢查工作困難等問(wèn)題[2-3]。因此,本文利用VBA語(yǔ)言編寫了一個(gè)操作簡(jiǎn)單的應(yīng)用程序,該程序能實(shí)現(xiàn)土地勘測(cè)定界面積匯總的自動(dòng)批量化處理。

        1 技術(shù)原理與方法

        1.1 程序制作的原理

        在利用ArcGIS模型構(gòu)建器(Model Builder)構(gòu)建年度土地利用現(xiàn)狀分類自動(dòng)計(jì)算面積模型的基礎(chǔ)上,使用VBA語(yǔ)言編寫程序來(lái)提取數(shù)據(jù)表格并整理數(shù)據(jù),最終自動(dòng)生成土地地類分類面積匯總表及集體建設(shè)用地變更情況說(shuō)明表。

        1.2 模型構(gòu)建器Model Builder

        模型構(gòu)建器Model Builder是一個(gè)用來(lái)創(chuàng)建、編輯和管理模型的應(yīng)用程序。使用Model Builder將ArcGIS中的工具串聯(lián)起來(lái),將復(fù)雜的工作流程簡(jiǎn)化為一個(gè)工具,當(dāng)保存模型時(shí),該模型將變成一個(gè)模型工具,實(shí)現(xiàn)流程重用,系統(tǒng)工具豐富,采用可視化的方式構(gòu)建數(shù)據(jù)處理工作流,基于工具箱內(nèi)的工具構(gòu)建自己的建模工具[4]。

        1.3 編程語(yǔ)言VBA

        VBA(Visual Basic for Applications)是Visual Basic的一種宏語(yǔ)言,是在其桌面應(yīng)用程序中執(zhí)行通用的自動(dòng)化(OLE)任務(wù)的編程語(yǔ)言。它與傳統(tǒng)的宏語(yǔ)言不同,傳統(tǒng)的宏語(yǔ)言不具有高級(jí)語(yǔ)言的特征,沒(méi)有面向?qū)ο蟮某绦蛟O(shè)計(jì)概念和方法,而VBA 提供了面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,提供了相當(dāng)完整的程序設(shè)計(jì)語(yǔ)言,它的編寫是以子過(guò)程和函數(shù)為單位,使用宏記錄器記錄用戶的各種操作并將其轉(zhuǎn)換為VBA 程序代碼,這樣可以容易地將日常工作轉(zhuǎn)換為VBA 程序代碼,使工作自動(dòng)化[5]。

        1.4 程序編制流程

        在編寫程序前應(yīng)先收集項(xiàng)目所需要的數(shù)據(jù)資料:報(bào)批范圍數(shù)據(jù)CAD、權(quán)屬文件shp、報(bào)批所需年份土地利用現(xiàn)狀等數(shù)據(jù)資料,然后利用ArcGIS平臺(tái)的Model Builder訪問(wèn)“空間相交分析”“匯總統(tǒng)計(jì)數(shù)據(jù)”“ 篩選”“合并”等地理處理工具整合所有數(shù)據(jù)、進(jìn)行面積統(tǒng)計(jì)分析;接著利用VBA如函數(shù)Getpivotdata、Iferror等進(jìn)行二次開(kāi)發(fā)完成制作各類面積表格模板、自動(dòng)填寫表格、檢查等工作;最后創(chuàng)建操作窗口界面實(shí)現(xiàn)一鍵提取數(shù)據(jù)并整理好的數(shù)據(jù)表格。制作土地勘測(cè)定界面積匯總表自動(dòng)生成程序的流程,如圖1所示。

        圖1 土地勘測(cè)定界面積匯總表自動(dòng)生成程序的流程

        2 應(yīng)用實(shí)例

        2.1 制作變更數(shù)據(jù)庫(kù)

        根據(jù)《廣東省自然資源廳關(guān)于建設(shè)用地報(bào)批地類有關(guān)問(wèn)題的通知》(粵自然資管制[2019]1439號(hào)):在建設(shè)用地報(bào)批組卷時(shí),應(yīng)按最新的年度土地利用變更調(diào)查成果(包括即將發(fā)布的“三調(diào)”成果及以“三調(diào)”為基礎(chǔ)的年度土地變更調(diào)查成果)確定報(bào)批地類。報(bào)批用地中涉及違法用地的,必須依法處理到位后,按照違法用地前的地類報(bào)批。

        依上文要求,在計(jì)算過(guò)程中需要對(duì)建設(shè)用地進(jìn)行年度變更情況說(shuō)明,因此可以先收集測(cè)區(qū)報(bào)批所需年份變更調(diào)查成果,并對(duì)測(cè)區(qū)內(nèi)所有建設(shè)用地的變更情況進(jìn)行匯總制作變更數(shù)據(jù)庫(kù)。

        2.2 搭建面積計(jì)算模型

        在收集項(xiàng)目報(bào)批范圍數(shù)據(jù)CAD、權(quán)屬文件(Shapefile)格式后,利用ArcGIS平臺(tái)Model Builder工具箱中的工具搭建模型,首先對(duì)上述數(shù)據(jù)進(jìn)行整合如:統(tǒng)一數(shù)據(jù)格式、坐標(biāo)系等工作。完成坐標(biāo)系定義后再通過(guò)“相交”等工具與權(quán)屬數(shù)據(jù)、最新年度DLTB變更調(diào)查數(shù)據(jù)、最新年度XZDW變更調(diào)查數(shù)據(jù)進(jìn)行疊加分析以得到最新年度土地分類數(shù)據(jù),再利用“篩選”“相交”等工具,將范圍內(nèi)建設(shè)用地地類圖斑與變更數(shù)據(jù)庫(kù)數(shù)據(jù)進(jìn)行疊加分析以得到建設(shè)用地年度變更數(shù)據(jù)(即違法用地變更前地類數(shù)據(jù))。最后通過(guò)“篩選”及“擦除”工具將最新年度土地分類數(shù)據(jù)中建設(shè)用地圖斑刪除,利用“合并”工具與建設(shè)用地年度變更數(shù)據(jù)進(jìn)行合并從而得到報(bào)批所組卷時(shí)所需的匯總數(shù)據(jù)[6]。

        2.3 自動(dòng)填寫模板表格屬性

        雖然利用Model Builder搭建的面積計(jì)算模型可以很快進(jìn)行匯總,但是經(jīng)過(guò)模型計(jì)算得到的成果數(shù)據(jù)結(jié)構(gòu)比較分散且無(wú)用字段多,與土地勘測(cè)定界項(xiàng)目要求的數(shù)據(jù)表格結(jié)構(gòu)相差甚遠(yuǎn),只能經(jīng)過(guò)人工手動(dòng)慢慢整理。為了讓復(fù)雜的工作簡(jiǎn)易化,避免數(shù)據(jù)回填出現(xiàn)錯(cuò)誤,可以通過(guò)Excel表格的數(shù)據(jù)透視表工具對(duì)原始數(shù)據(jù)表格進(jìn)行重新匯總,同時(shí)使用“GetpivotData” 函數(shù)(返回存儲(chǔ)在數(shù)據(jù)透視表中的數(shù)據(jù)),通過(guò)行標(biāo)簽及列標(biāo)簽的對(duì)應(yīng)關(guān)系,將數(shù)據(jù)填充到土地分類面積表模版表格中[7-8]。

        在數(shù)據(jù)自動(dòng)填充后,如果單元格中沒(méi)數(shù)據(jù)時(shí),模板表格的單元格在透視表中會(huì)顯示“#REF!”錯(cuò)誤,在此可以增加一個(gè)“Iferror” 函數(shù)(判斷數(shù)據(jù)的正確性并返回值)清理空值數(shù)據(jù),具體公式:Iferror(GETPIVOTDATA("面積",[表一數(shù)據(jù).xls]Sheet1!$A$3,"經(jīng)濟(jì)社匯",$B7,"DLBM",B$5),""),利用Iferror函數(shù)前后效果對(duì)比,如圖2所示。

        圖2 利用Iferror函數(shù)前后效果對(duì)比

        2.4 程序?qū)崿F(xiàn)

        在完成面積計(jì)算模型及模板表格的制作等工作后,可利用VBA語(yǔ)言編寫程序來(lái)提取數(shù)據(jù)表格并整理數(shù)據(jù),編制勘測(cè)定界程序的主要工作內(nèi)容及語(yǔ)言如下:

        1)制作自動(dòng)插入數(shù)據(jù)透視表匯總和成果表格整飾VBA語(yǔ)言模塊,部分代碼如下:

        Sub 表1()

        ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=

        "Database").CreatePivotTable TableDestination:="", TableName:="數(shù)據(jù)透視表1",DefaultVersion:=xlPivotTableVersion10

        ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)

        ActiveSheet.Cells(3, 1).Select

        With ActiveSheet.PivotTables("數(shù)據(jù)透視表1").PivotFields("經(jīng)濟(jì)社匯總")

        .Orientation=xlRowField

        .Position=1

        End With

        With ActiveSheet.PivotTables("數(shù)據(jù)透視表1").PivotFields("權(quán)屬")

        .Orientation=xlRowField

        .Position=2

        End With

        With ActiveSheet.PivotTables("數(shù)據(jù)透視表1").PivotFields("DLBM")

        .Orientation=xlColumnField

        .Position=1

        End With

        ActiveSheet.PivotTables("數(shù)據(jù)透視表1").AddDataField ActiveSheet.PivotTables("數(shù)據(jù)透視表1" _).PivotFields("面積"), "求和項(xiàng):面積", xlSum

        ActiveSheet.PivotTables("數(shù)據(jù)透視表1").PivotFields("經(jīng)濟(jì)社總").RepeatLabels=True

        End Sub

        2)制作程序窗體,主要代碼如下:

        復(fù)制文件夾并重命名

        (CreateObject("Scripting.FileSystemObject").CopyFolder"…",router "...")

        刪除文件(Kill "…")

        調(diào)用數(shù)據(jù)表格及模板表格 (Workbooks.Open Filename:="…")

        在不同表格中調(diào)用VBA模塊(Application.Run "…")

        輸出成果表格 (ActiveWorkbook.SaveAs Filename:="…")

        程序最終操作界面,如圖3所示。運(yùn)行該程序,在界面中輸入項(xiàng)目號(hào),然后單擊“開(kāi)始整理面積表”按鈕,根據(jù)項(xiàng)目號(hào)對(duì)應(yīng)的項(xiàng)目所需的各個(gè)土地勘測(cè)定界面積匯總表就會(huì)按土地勘測(cè)項(xiàng)目技術(shù)要求的格式自動(dòng)生成[9-10]。

        圖3 軟件操作界面

        2.5 應(yīng)用效果分析

        將廣清城際軌道項(xiàng)目京廣信號(hào)樓、獅嶺鎮(zhèn)軍田經(jīng)濟(jì)發(fā)展用留地、花都區(qū)大陵河三華凈水廠工程等土地勘測(cè)定界項(xiàng)目用傳統(tǒng)的方法與本文所述勘測(cè)定界程序方法進(jìn)行比對(duì),對(duì)比結(jié)果見(jiàn)表1。經(jīng)比對(duì),所有項(xiàng)目利用本程序能有效減少人工誤差,本程序一鍵生成的土地分類面積匯總表的數(shù)據(jù)精度均滿足每個(gè)項(xiàng)目的技術(shù)要求,同時(shí)本程序操作簡(jiǎn)單,所投入的人工少,工作效率高。

        表1 勘界定界程序與傳統(tǒng)方法比較表

        3 結(jié)束語(yǔ)

        本文基于ArcGIS中Model Builder建模與編程語(yǔ)言VBA腳本二次開(kāi)發(fā)等技術(shù),設(shè)計(jì)并編寫了土地勘測(cè)定界面積匯總表自動(dòng)生成程序,并實(shí)現(xiàn)了自動(dòng)化、批量化、一體化的功能,保證了從數(shù)據(jù)采集、面積計(jì)算到表格輸出的全過(guò)程無(wú)縫對(duì)接,計(jì)算結(jié)果準(zhǔn)確。實(shí)踐證明,利用該程序可以減少人工操作,避免人工干預(yù)多造成的差錯(cuò),極大地提高了工作效率。

        猜你喜歡
        程序模型
        一半模型
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
        試論我國(guó)未決羈押程序的立法完善
        失能的信仰——走向衰亡的民事訴訟程序
        “程序猿”的生活什么樣
        英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
        3D打印中的模型分割與打包
        創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
        FLUKA幾何模型到CAD幾何模型轉(zhuǎn)換方法初步研究
        青青草亚洲视频社区在线播放观看| 亚洲一区二区欧美色妞影院 | 日韩一二三四区免费观看| 国产高清精品一区二区| 日本做受120秒免费视频| 亚洲a∨无码一区二区| 人片在线观看无码| 加勒比久久综合久久伊人爱| 中文字幕人妻熟女人妻| 久久国产色av| 亚洲女同系列高清在线观看| 亚洲国产av一区二区三区天堂| 国产精品特级毛片一区二区三区| 国产一区日韩二区欧美三区| 久久精品国产精品亚洲艾| 色和尚色视频在线看网站| 亚洲av成人精品日韩在线播放| 中文字幕亚洲欧美日韩在线不卡| 中文字幕一区二区三区在线视频| 日本一二三区免费在线| 久久久久亚洲av成人网人人网站 | av男人的天堂手机免费网站| 青青青国产免A在线观看| 蜜桃夜夜爽天天爽三区麻豆av| 国产无套粉嫩白浆在线| 人人妻人人澡av天堂香蕉| 日本视频精品一区二区| 亚洲一区二区三区精品| 国产午夜鲁丝片av无码| 国产主播在线 | 中文| 免费观看在线视频播放| 中文字幕在线亚洲精品| 亚洲人成无码网站久久99热国产| 国产精品国产三级国av在线观看| 懂色av一区二区三区尤物| 国产农村乱子伦精品视频| 阿v视频在线| 成人在线观看av毛片| 欧美性色黄大片手机版| 亚洲男人的天堂精品一区二区| 91精品国产综合久久国产|