2011-12-07 78 views
2

我有一個形狀文件,其文件類型是折線。但我想把它轉換成多邊形。免費資源有可能嗎?如何將形狀文件類型從多段線轉換爲多邊形?如何將形狀文件類型從折線轉換爲多邊形?

+0

你能分享你所使用的GIS軟件?谷歌搜索「轉換多邊形多邊形」(不帶引號)會帶來很多解決方案,但它們都依賴於您使用的GIS軟件。 –

+0

使用c#和任何免費來源 – Coenni

回答

2

這可以很容易地在python中藉助PySAL庫來完成。

例如,給定一個名爲「tst.shp」有兩條折線shape文件, Two Polylines in QGIS

我們可以打開shapefile中的折線轉換爲多邊形並寫出一個新的shape文件。

>>> import pysal 
>>> shps = pysal.open('tst.shp','r') 
>>> o = pysal.open('tst_polygons.shp','w') 
>>> for polyline in shps: 
...  verts = polyline.vertices 
...  if verts[0] != verts[-1]: #make sure the polylines are closed rings 
...   verts = verts+verts[0:1] 
...  o.write(pysal.cg.Polygon(verts)) 
... 
>>> o.close() 

現在我們有多邊形, Two Polygons in QGIS

如果您需要一種方法來做到這一點無需編程,試着問你的問題在http://gis.stackexchange.com

+0

感謝您的回覆。我在google上看到過這個。但用c#(不是python)有可能嗎? – Coenni

+1

這裏可能有很多用於C#的Shapefile讀寫器。如果沒有,您可以在這裏找到Shapefile規範,http://www.esri.com/library/whitepapers/pdfs/shapefile.pdf – Charles

+0

折線和多邊形類型之間的差異很小。最重要的是你的戒指需要關閉。如果是這樣的話,你可能只需要在每個形狀上標註類型標誌並在主標題中找回一個Polygon shapefile。 – Charles