FME的SHP寫模組拒絕輸出要素

2021-08-20 21:38:23 字數 1515 閱讀 2791

在fme

中常常處理分析

shp資料,再通過

shp的寫模組將成果輸出,這可能會遇到只輸出小部分資料或是完全沒有輸出輸出的情況,在模板的資料流中也沒發現資料丟失,模板提示執行成功。這樣的問題對於接觸

fme不久的朋友來說就很難找到原因,因為這不是某個錯誤操作或是某個轉換器使用不當導致。

在對乙個

shperror - expected an aggregate or area geometry

;拒絕32輸出要素。使用轉換器deaggregator處理後任然沒有解決此問題。

寫模組是輸出的面,看提示可能是輸出時有非面的幾何體,在寫模組前新增

fme universal viewer

預覽。如下圖:

預覽沒發現任何問題,但卻沒有輸出成果。對寫模組重定向,成預覽如下圖:

檢視到的所有資料

fme_geometry=fme_line

,在寫模組前新增的

fme universal viewer

預覽fme_geometry=fme_polygon

。看到這樣的情況很凌亂了,第一次遇到的這樣的情況。

將寫模組改為

mdb寫模組,正常輸出需要結果,或將資料的屬性改為

fme_geometry=fme_polygon

和fme_type=fme_area

也可以輸出

shp資料,但這並不是最好的解決方法。

經過資深技術專家指導,發現問題出在

clipper

轉換器,準確的說也不是

clipper

轉換器的錯,是不正確使用

clipper

與lineonareaoverlayer

兩個轉換器導致的問題。使用

clipper

轉換器後常常會出現聚合體,在存在聚合體的時候使用

lineonareaoverlayer

轉換器就會有以上問題的出現。

在clipper

引數設定中

-向量處理

-建立聚合改為

no,就能解決問題了。

這樣的例項提醒我們在學習和使用

fme各個轉換器的過程中不要僅以某個轉換器的方式來學習,而要以某些或某類轉換器的學習方式來學習,使用時要考慮轉換器與轉換器之間可能存在的問題。

FME中Cass擴充套件屬性轉Shp的方法

問題 真受不了cad中的註記,只能方便顯示,難於資料互動。好在cass把屬性資訊基本寫在擴充套件屬性中,但顯示又成問題了。此事難兩全!我們通過檢視實體屬性,需要把宗地界線的擴充套件屬性提取出來。即組碼為 3,south中的宗地號 戶主名和地類 提取出來。分析 曾寫過乙個標註寫入面屬性的程式,最近又寫...

FME轉shp到CAD的另一種方法

j 利用2dforcer轉換器,移除所有的高程 z 座標 k 借助attributecreator轉換器,設定新的屬性值。經過對cad檔案進行分析可知,僅需要新建autocad layer 圖層 autocad entity 實體 autocad color 顏色 三個屬性值即可 並對其進行分別賦值...

使用C寫Python的模組

概述 引入 python.h 標頭檔案 編寫包裝函式 處理從 python 傳入的引數 實現邏輯功能 處理 c 中的返回值 註冊函式 註冊模組 編譯原文發於2010年11月。python 可以非常方便地和 c 進行相互的呼叫。一般,我們不會使用 c 去直接編寫乙個 python 的模組。通常的情景是...