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

主站蜘蛛池模板: 欧美中文字幕无线码视频| 久久综合伊人77777| 99视频免费观看| 真人免费一级毛片一区二区| 国产精品一区在线麻豆| 国产在线精品香蕉麻豆| a级高清毛片| 尤物精品国产福利网站| 国产69精品久久| 国产乱子精品一区二区在线观看| 狼友视频国产精品首页| 国产正在播放| 亚洲色欲色欲www在线观看| av色爱 天堂网| 国产日本一区二区三区| 18禁高潮出水呻吟娇喘蜜芽| 四虎精品国产AV二区| 国产亚洲现在一区二区中文| a级毛片在线免费观看| 99在线视频精品| 欧美特黄一级大黄录像| 欧美一级在线| 中文字幕 欧美日韩| 久久黄色一级片| 国产电话自拍伊人| 一本大道视频精品人妻| 97青青青国产在线播放| 精品久久蜜桃| 91美女视频在线| 亚洲人成影院在线观看| 欧美日韩北条麻妃一区二区| 亚洲中文字幕在线一区播放| 91小视频版在线观看www| 男女性色大片免费网站| 四虎在线观看视频高清无码 | 伊人久久婷婷| 亚洲欧美日韩综合二区三区| 91麻豆精品视频| 在线看AV天堂| 国产91视频观看| 日韩成人在线视频| 中文字幕久久波多野结衣| 亚洲精品国产精品乱码不卞| 国产在线专区| 国产精品19p| 日韩高清中文字幕| 亚洲成aⅴ人片在线影院八| 丁香婷婷激情综合激情| 伊人久久精品亚洲午夜| 亚洲第一精品福利| 精品久久国产综合精麻豆| 国产又大又粗又猛又爽的视频| 婷婷色丁香综合激情| 亚洲中文字幕97久久精品少妇| 精品欧美一区二区三区在线| 精品国产99久久| 在线观看的黄网| 国产丝袜啪啪| www.99精品视频在线播放| 国产精品手机在线播放| 中日无码在线观看| 国产一级α片| 国产精品香蕉在线| 国产福利微拍精品一区二区| 3D动漫精品啪啪一区二区下载| 久久亚洲精少妇毛片午夜无码 | 最新亚洲人成无码网站欣赏网| 国产地址二永久伊甸园| 亚洲成人77777| 色吊丝av中文字幕| 久久黄色毛片| 四虎影视库国产精品一区| 亚洲视频免费播放| AV不卡无码免费一区二区三区| 漂亮人妻被中出中文字幕久久| h视频在线观看网站| 欧美日韩精品一区二区在线线 | 精品一区国产精品| 这里只有精品免费视频| 国产亚洲视频免费播放| 永久天堂网Av| 国产一区二区人大臿蕉香蕉|