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

        ?

        基于C#編程的按位置及屬性值自動合并圖斑方法探究

        2021-11-28 14:57徐劍松楊文總李果明
        綠色科技 2021年5期
        關(guān)鍵詞:圖斑林權(quán)語句

        徐劍松,楊文總,李果明

        (1.廣西壯族自治區(qū)林業(yè)勘測設(shè)計院,廣西 南寧 530011;2.廣西裕博林業(yè)勘測規(guī)劃設(shè)計有限公司,廣西 南寧 530011;3.廣西蒙山縣林業(yè)局,廣西 梧州 546700)

        1 林業(yè)數(shù)據(jù)處理中合并圖斑的應(yīng)用場景

        1.1 林權(quán)不動產(chǎn)調(diào)查

        針對位置彼此相鄰,且享有相同屬性值的圖斑。從幾何上看,他們享有共同邊,享有相同的屬性。按照林權(quán)不動產(chǎn)調(diào)查的有關(guān)技術(shù)規(guī)程,幾個相鄰的不動產(chǎn)單位,并且屬于同一林權(quán)權(quán)利人,應(yīng)劃為同一宗地[1]。這就要求將類圖斑按照此規(guī)則進(jìn)行合并。以往的林權(quán)調(diào)查,通常以小班作為調(diào)查單元,記載各小班的林權(quán)狀況,小班就相當(dāng)于不動產(chǎn)調(diào)查中的不動產(chǎn)單元。現(xiàn)有的林權(quán)數(shù)據(jù)大都為2009年林權(quán)制度改革的成果,林權(quán)證要逐步銜接到不動產(chǎn)證,就要將不動產(chǎn)單元歸整到宗地[2]。

        1.2 森林資源管理“一張圖”

        在繪制森林資源管理“一張圖”小班后,會產(chǎn)生大量的碎斑(小面積圖斑),需要對這些碎斑進(jìn)行合并操作[3]。雖然可以使用ArcGIS軟件中的消除工具進(jìn)行合并,但這個工具只能進(jìn)行有限的條件控制,往往會將一些本應(yīng)保留的圖斑也合并了。若要精準(zhǔn)合并圖斑,必須將此工具進(jìn)行功能拓展,而運用C#語言進(jìn)行功能拓展是解決這一問難題的有效方案。

        2 具體思路

        2.1 找出具有鄰接關(guān)系的圖斑

        根據(jù)圖斑的空間位置信息判斷圖斑的位置關(guān)系,通過循環(huán)語句(搜索游標(biāo))遍歷矢量數(shù)據(jù)的所有圖斑,再利用ArcGIS Engine提供的判斷圖斑之間位置關(guān)系的接口--IRelationalOperator,該接口支持判斷的空間關(guān)系類型包括Contains(包含)、Crosses(相交)、Equals(相等)、Overlaps(重疊)、Touches(相接)等[4],采用該接口的Touch方法,輸入比對要素的幾何信息(IFeature.Shape)作為參數(shù),可判斷兩個圖斑是否具有相鄰位置。

        2.2 判斷鄰接圖斑是否符合合并條件

        識別出當(dāng)前圖斑的所有相鄰圖斑后,遍歷讀取該圖斑屬性表相應(yīng)字段的值,通過比較運算符確定該鄰接圖斑是否符合合并條件。使用流程控制語句中的分支語句,使符合合并的條件圖斑進(jìn)入下一處理流程。當(dāng)符合合并條件的相鄰圖斑為2個及以上時,推薦的做法是創(chuàng)建一個要素列表保存所有符合合并條件的相鄰圖斑,后續(xù)的合并、刪除要素都可以通過操作列表輕松實現(xiàn)。

        2.3 合并前處理

        經(jīng)過以上兩步的位置甄別和屬性值比對,已經(jīng)獲得符合合并條件的圖斑,合并操作需要包含在編輯業(yè)務(wù)流中,因此在執(zhí)行操作前,要先啟動編輯工作流程,需要用到IEngineEditor接口,該接口用于開啟編輯對象的方法為StarEditing,需要傳入IMap和IWorkspace2個參數(shù)。

        2.4 合并圖斑

        ArcGIS Engine合并操作,相當(dāng)于用的ArcMap圖形操作界面的編輯器下的合并(Merge)功能,但又有所不同。合并圖斑用到的是ITopologicalOperator2接口,應(yīng)在合并前要預(yù)先創(chuàng)建一個空要素來保存結(jié)果圖斑,創(chuàng)建要素使用IFeatureClass接口的CreateFeature方法。調(diào)用ITopologicalOperator2接口的Union方法,將兩個同維度的幾何對象合并為單個幾何對象[5],其參數(shù)為被合并圖斑的幾何信息,再使用賦值語句將結(jié)果賦值給預(yù)先創(chuàng)建的空要素。

        2.5 刪除被合并的圖斑

        由于圖斑合并使用的Union方法的功能是產(chǎn)生新的圖斑,再利用參與合并的圖斑邊界生成的新圖斑。該過程本質(zhì)上是新增了一個圖斑,對原來的圖斑未做處理。要達(dá)到ArcMap圖形操作界面的合并功能效果,還需要在合并圖斑后,把參與合并的圖斑刪除,否則要素類會存在重疊。刪除要素使用IFeature接口的Delete方法。

        2.6 保存編輯

        在編輯操作中,所有的編輯操作在沒有保存之前都被保存在內(nèi)存中,只有執(zhí)行保存操作,才能把所有的編輯結(jié)果保存到文件中[6]。停止編輯、保存編輯內(nèi)容的方法均在IWorkspaceEdit接口下,停止編輯方法為StopEditOperation;保存編輯的方法為StopEditing,該方法需要傳入一個參數(shù),“true”表示保存,“false”表示不保存。

        3 程序編寫

        以Microsoft的可視化開發(fā)環(huán)境Visual Studio作為開發(fā)工具,采用面向?qū)ο蟮能浖_發(fā)語言C#創(chuàng)建一個項目,并在擴展項引入ArcObjects。

        關(guān)鍵代碼:

        pWorkspaceEdit.StartEditing(true);

        pWorkspaceEdit.StartEditOperation();

        for (inti = 0; i

        {

        IFeatureCursorpFeatureCursor = pFeatureClass.Search(null, false);

        IFeaturepFeature = pFeatureCursor.NextFeature();

        IGeometryCollectiongeometryBag = newGeometryBagClass();

        ITopologicalOperator2 topoOperator = null;

        IGeometrygeometryMax = null;

        IGeometrygeometryOther = null;

        if (LstOther.Count> 0)

        {

        geometryMax = maxFeature.Shape;

        IGeometrygeometryNext = null;

        IFeatureunionedFeature = pFeatureClass.CreateFeature();

        IGeometryunionedGeometry=null;

        for (int j = 0; j

        {

        geometryNext = LstOther[j].Shape;

        if (unionedGeometry != null)

        {topoOperator = (ITopologicalOperator2)unionedGeometry;

        }

        unionedGeometry = topoOperator.Union(geometryNext);

        pWorkspaceEdit.StopEditOperation();

        pWorkspaceEdit.StopEditing(true);

        4 結(jié)論與建議

        借助C#語言編程及ArcGIS Engine提供的組件,可以讓圖斑之間的合并操作變得簡單、智能,并可廣泛應(yīng)用于林業(yè)數(shù)據(jù)處理工作中。對需要合并的600個圖斑進(jìn)行測試,使用本文所述方法,耗時3 min,正確率100%;而采用傳統(tǒng)的手動合并方法操作,則需要2 h,且圖斑數(shù)量增多后,容易出現(xiàn)合并錯誤。

        合并圖斑有許多需要注意的細(xì)節(jié),建議合并前預(yù)先保存被合并圖斑的屬性值,完成合并后再對結(jié)果圖斑賦值,使結(jié)果圖斑屬性與合并前某一圖斑屬性一致。若不設(shè)置屬性值,結(jié)果圖斑將只保留圖形,屬性值為空。另外,在合并后要加上保存的操作,才能成功合并圖斑。設(shè)置完屬性值后,也要使用store方法保存。

        猜你喜歡
        圖斑林權(quán)語句
        地理國情監(jiān)測中異形圖斑的處理方法
        新安縣有序開展衛(wèi)星遙感監(jiān)測圖斑核查工作
        遙感影像提取圖斑中狹長結(jié)構(gòu)的探測與融解方法
        土地利用圖斑自動檢測算法研究
        林權(quán)供求信息
        林權(quán)供求信息
        林權(quán)供求信息
        林權(quán)供求信息
        基本算法語句
        我喜歡
        永久免费不卡在线观看黄网站| 国产精品午夜夜伦鲁鲁| 把女人弄爽特黄a大片| 99精产国品一二三产品香蕉| 亚洲午夜无码AV不卡| 亚洲国产精品成人一区| 免费国产在线精品一区二区三区免| 国产成人a在线观看视频免费| 成人无码午夜在线观看| 狠狠亚洲超碰狼人久久老人| 精品日本一区二区三区| 亚洲国产成人av在线观看| 狠狠久久亚洲欧美专区| 国产传媒剧情久久久av| 黄片视频大全在线免费播放| 色妞色视频一区二区三区四区| 亚洲欧美日韩中文天堂| 一区二区三区精品偷拍av| 亚洲综合精品亚洲国产成人| 亚洲色精品aⅴ一区区三区| 在线精品无码一区二区三区| 视频在线播放观看免费| 69国产成人精品午夜福中文| 国产无遮挡裸体免费视频| 偷拍区亚洲区一区二区| 久久精品亚洲94久久精品| 亚洲性无码一区二区三区| 久青草国产视频| 亚洲av高清在线一区二区三区 | 久久无码人妻精品一区二区三区 | 亚洲国产精品一区二区毛片| 国产麻豆成人精品av| 日韩AV无码一区二区三不卡| 亚洲精品中文字幕一二三| 精品久久久久久久久午夜福利| 亚洲一区二区三区偷拍女厕| 国产一区二区三区四区色| 极品嫩模大尺度av在线播放| 无遮挡边摸边吃奶边做视频免费| 欧美日韩国产高清| 国产自拍偷拍视频免费在线观看|