999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于VBA批量刪除城鎮地籍中重復實體的方法

2010-12-31 00:00:00杜芳芳
商場現代化 2010年29期

[摘 要] 對屬性的檢查和對拓撲錯誤的檢查是城鎮地籍建庫的重要工作,刪除重復性實體又是常見且刪除起來比較復雜的過程,利用手工刪除重復實體的速度較慢,而利用軟件刪除時,由于各類軟件的數據定義格式不統一,會造成數據丟失等錯誤,本文利用ARCGIS自帶的VBA開發工具,對重復實體進行了批量刪除處理,其有速度快,精度高的優點。

[關鍵詞] 城鎮地籍 VBA 重復實體 批量刪除

一、引言

城鎮地藉作為國家合理管理城鎮土地的重要依據,它包括對土地的位置、類型、數量、用途等狀況的登記。第二次全國土地調查主要的地籍成圖軟件有南方CASS,MAPGIS和ARCGIS,目前它的主要工作已經轉移到內業的修改上,內業的修改主要是對數據的檢查和修改,本文首先探討了數據的檢查方法,其次探討了在刪除重復實體的一些常見方法及它們的不足之處,最后針對這些問題,使用ARCGIS自帶的VBA開發工具批量刪除了重復實體,速度較快。

二、數據的檢查

拓撲學是一門研究點、線、面等圖形,且所研究的圖形經過拓撲變換后其性質保持不變的學科。拓撲關系是一種定義空間結構關系的方法,不管它的圖形形狀如何變化,但圖形關系始終保持不變。

1.城鎮地籍建庫時常見的拓撲檢查錯誤

(1) 面與面不能覆蓋

(2) 線與線不能重疊

(3)點與點不能重疊

上面列舉的三種拓撲錯誤是城鎮地籍建庫地籍成圖時所常見的三種錯誤,造成這些錯誤的原因有多種,比如操作人員的操作失誤,或者是操作人員分工不明確,一幅成圖由兩人或多人來完成,等等。

2.處理拓撲錯誤的方法

(1)手工方式是通過拓樸工具從上往下逐條的進行修改,通常情況下,這種方式適用于拓撲錯誤較少,數據量較小的情況。

(2)第二種方法是采用軟件來進行shp數據的修改,比如南方CASS,在進行拓撲錯誤的修改時,由于在一開始,外業單位使用的軟件不同,就得到了不同的數據格式,通常有CAD、MAPGIS、ARCGIS數據,這樣在數據轉化的過程中,由于各類軟件的數據定義格式不同,將會或多或少的產生數據的丟失情況,最后也不能很好的修改數據。

(3)第三種方式是通過二次開發的方式進行數據的批量修改,本文在實際的工作基礎上,發現通過ARCGIS自帶的VBA開發工具來實現拓撲錯誤的批量修改是比較快捷、方便的。

三、 實現方法

1.VBA的應用

VBA是ARCGIS自帶的一個內部組件,擁有ARCOBJECT組件庫,VBA可對這些組件庫進行直接調用,而不需要安裝其它獨立的開發工具。如果使用其它獨立的開發工具,如ARCENGINE,還需添加組件和類,并且要進行軟件的注冊和配置,對于不熟練的作業單位來說,是比較復雜和繁瑣的,而使用VBA,作業人員將減少了這些流程的操作。其次ARCGIS可直接加載城鎮外業采集的數據,在VBA環境下直接操作已經加載到ARCGIS中的數據。

2.VBA刪除重復實體的實現方法

上面已經提到,數據(這里是幾何體)的拓撲錯誤主要有三類,點重復、線重復和面重復三類重復實體拓撲錯誤,這類拓撲錯誤在實際檢查和分析過程中,可以發現他們分為兩類,一類是完全的重復實體,另一類則可能是部分的重復實體,由于在進行拓撲檢查時,系統提供了緩沖區的值,一般為0.001,那么在進行這類重復實體刪除時,還要考慮到緩沖區內重復實體的分析。通過分析,刪除重復實體的思路也就清晰了。

第一步,加載Database數據,包括拓撲檢查后的圖層,在VBA中讀取當前MxDocument中數據,并指向當前活動的圖層:

Dim pMxDoc As IMxDocument

Dim pMap As IMap

Dim pRoadLayer As IFeatureLayer

Dim pFeatSelection As IFeatureSelection

Dim pQueryFilter As IQueryFilter

Dim pRoadSelSet As ISelectionSet

Dim pRoadCursor As IFeatureCursor

Set pMxDoc = ThisDocument

Set pMap = pMxDoc.FocusMap

Set pRoadLayer = pMap.Layer(0)

第二步,將重復的實體數據先拷貝備份一份,在此我們需要ShapeCopy 屬性,查看ESRI對象模型圖,可以看到ShapeCopy是屬于IFeature接口(如圖3.1),首先我們需要從頭讀取整個幾何形體,再進行幾何形體的拷貝。

圖3.1 IFeature接口中的ShapeCopy

部分程序如下:

Dim pFeatureMark As FeatureMark = pHasTable.Item(n + 1)

If pFeatureMark.Flag = False Then

Dim pFeature As IFeature = pFeatureMark.FeatureEntity()

Dim pTopoOperator As ITopologicalOperator = pFeature.ShapeCopy()

第三步,在備份好重復的數據后,我們就可將重復的數據進行刪除,在刪除的時候我們要考慮到在一定值域內的重復實體,那么這里我們要用到Buffe參數,ESRI對象瀏覽器,可以看到它屬于ITopoOperatorI到TopoOperator4四個接口,這里我們使用ITopoOperatorI(如圖3.2)接口,ITopoOperatorI接口用來判斷獨立的幾何形體之間的空間關系,可進行緩沖區分析、重疊區域分析,合并分析和剪切分析等,由于數據在建立時默認的數值為0.01,那么這里參數也相應的設置為0.01,

圖3.2 ItopoOperatorI接口

部分程序如下:

If m <> n Then '去掉比較同一實體對象

Dim pFeatureMarkTemp As FeatureMark = pHasTable.Item(m + 1)

Dim pFeatureTemp As IFeature = pFeatureMarkTemp.FeatureEntity()

If pFeatureMark.Flag = False Then

If IsOverlapsGeo(pTopoOperator.Buffer(0.01), pFeatureTemp.ShapeCopy()) = True Then

pFeatureMark.Flag = True

pFeatureTemp.Delete()

pHasTable.Item(m + 1) = pFeatureMark

加載以上程序后,創建一個UIButtonControl按鈕,在GIS圖形界面中,單擊Button按鈕,就可一次性直接刪除拓撲錯誤中的重復實體。

四、結論

本文主要探討和研究了城鎮地籍建庫過程中刪除shp數據中重復實體的方法,刪除重復實體是一個相對繁瑣的過程,通過手工方法進行刪除數據效率是比較低下的,本文通過采用Arcgis的VBA開發工具,利用程序自動搜索數據中的重復實體記錄,達到了高效、快捷的刪除記錄的目的,為建庫的實施提供了一定的技術支持。

參考文獻:

ArcObject開發基礎教程 賈慶雷 陳鉆 ESRI中國(北京)培訓中心2006.11

主站蜘蛛池模板: 58av国产精品| 亚洲日韩国产精品无码专区| 亚洲国产精品日韩欧美一区| 欧美综合在线观看| 精品国产免费观看| 啪啪国产视频| 在线看片中文字幕| 99热这里只有精品国产99| 亚洲精品无码抽插日韩| 国产喷水视频| 国产在线观看一区精品| 日本精品影院| 色综合久久久久8天国| 色噜噜狠狠色综合网图区| 影音先锋亚洲无码| 亚洲一区二区三区国产精华液| 无码中文AⅤ在线观看| 国产成年女人特黄特色大片免费| 一级毛片在线免费看| 亚洲人在线| 免费人成黄页在线观看国产| 国产福利小视频在线播放观看| 美女毛片在线| 亚洲中文字幕久久无码精品A| 精品久久久久无码| 日韩一区精品视频一区二区| 国产在线观看一区二区三区| 欧美日韩亚洲国产主播第一区| 中文天堂在线视频| 中文字幕资源站| 特级aaaaaaaaa毛片免费视频| 亚洲午夜片| 啊嗯不日本网站| 一级毛片在线直接观看| 三上悠亚一区二区| 五月婷婷欧美| 色综合国产| 九九久久精品免费观看| 熟妇无码人妻| 欧美高清三区| 美女无遮挡免费视频网站| 亚洲国产天堂久久九九九| 91午夜福利在线观看精品| 小说 亚洲 无码 精品| 亚洲精品在线91| 国产精品女在线观看| 免费看a毛片| 国产成人禁片在线观看| 成人欧美在线观看| 精品国产香蕉伊思人在线| 精品在线免费播放| 亚洲精品国产成人7777| 九九精品在线观看| 美女视频黄频a免费高清不卡| 亚洲美女AV免费一区| 青青青视频蜜桃一区二区| 久久亚洲AⅤ无码精品午夜麻豆| 五月婷婷精品| 99re在线观看视频| 在线播放真实国产乱子伦| 91丝袜美腿高跟国产极品老师| 色视频久久| 第一区免费在线观看| 欧美啪啪一区| 亚洲男人天堂2020| 91在线激情在线观看| 欧美亚洲国产视频| 人人爽人人爽人人片| 亚洲色大成网站www国产| 国产视频一二三区| 狠狠色噜噜狠狠狠狠奇米777 | 91破解版在线亚洲| 四虎国产永久在线观看| 女人一级毛片| 国产原创演绎剧情有字幕的| 二级特黄绝大片免费视频大片| 日本亚洲欧美在线| 日本免费福利视频| 久久国产黑丝袜视频| 2021国产在线视频| 亚洲看片网| 成年人国产网站|