在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 的模組。通常的情景是...