刪除重複的要素之 線

2021-06-19 18:57:29 字數 1547 閱讀 7092

1.      工具delete identical

同之前的兩篇文章——《刪除重複的要素之點、面》一樣,這裡可以借助重複的線長度相同的思路,用delete identical工具對重複的線進行刪除。

如果資料儲存是geodatabase,直接勾選shape_length欄位,此工具會比較屬性值相同的要素,並進行刪除;若是shapefile格式,可先用calculate geometry計算線長。

2.      dissolve工具

可以把多個要素,通過指定的屬性(屬性值相同),溶解成乙個要素。

用dissolve工具,按欄位shape_length進行溶解。重複的線要素會被溶解掉。

3.      planarize lines

大家所熟知的planarize lines的功能是:在交點處將相交的線打斷。除此以外,planarize lines的另外乙個功能就是刪除重複線。

planarize lines在topology工具條上,需配合編輯狀態使用。

(1)       備份資料。

(2)       新建欄位fidnew,並用fid欄位賦值。為什麼要新建這個欄位呢,下面一步來解釋。

(3)開始編輯start editing,全選線段,點topology工具條上的planarize lines,儲存資料,停止編輯。

做到這一步,大家會發些,重複的線已經被刪除了。但是我們也知道,planarize lines的另外乙個功能是打斷相交線,原先並不重複的一些線由於相交就被打斷了,這是我們不想的。planarize lines處理完後的fid字段值也發生了變化,在上一步中,我們儲存了原始的fid值到字段fidnew中,即使線被打斷成兩條,它們的fidnew值保持一樣。

下面我們就需要恢復被打斷的線。

(4)dissolve溶解。勾選除了fid和shape_length以外的其他字段。

4.      建立拓撲

對於線,有一條拓撲規則must not overlap,可以查詢重複的線。

如下圖,被高亮選中的線在屬性表裡有5條記錄,它們完全重合。

建立拓撲,並新增規則must not overlap。在錯誤監視器裡,選中單條錯誤,右鍵subtract,選擇刪除哪一條線。

不過該方法不能批量刪除多次重複的線,處理起來較麻煩。

線要素的節點提取

首先我並不清楚是不是還有比這種方法更好的方法,但是由於專案需要只能暫時使用這個了,而且感覺還不錯。上篇中提到已經將線要素在折點處斷開,是為了在空間分析中資料更加合理,但歸根到底我們最後需要檢索並分析的是節點資料,也就是管道的介面或閥門。所以接下來的工作就是提取節點。我用的方法是對斷開的 不斷開也可以...

css刪除線 使用HTML5的刪除線

css非常適合樣式設定,但不適用於提供內容含義。這就是html語義標記的用途,當你嘗試刪除內容時,通常會有乙個原因,並且可以使用適當的html標籤來描述該原因。使用或傳達,並賦予你的 以語義意義 是的,它們都是刪除線。但是,它們傳達了關於內容的不同含義。所以它們是不能互換的。你要選擇乙個能反映你想達...

ArcGIS Engine中刪除要素的幾種方法總結

原文 arcgis engine中刪除要素的幾種方法總結 csharp view plain copy print?通過ifeature.delete方法刪除要素 要素類 查詢條件 public static void deletefeaturebyifeature ifeatureclass pf...