将线转换为多边形


13

我有一个包含市区的shapefile,但是不幸的是,shapefile仅包含单行。shapefile如下所示:

在此处输入图片说明

我想将这些线转换为QGIS中的区域多边形shapefile。我使用“到多边形的线”工具(“矢量”>“几何工具”>“到多边形的线”)进行了尝试,但无法正常工作。使用此工具后,shapefile如下所示:

在此处输入图片说明

还有其他方法可以将线shapefile转换为QGIS中的区域多边形shapefile吗?

顺便说一句,我正在使用QGIS 2.14.3 Essen。


2
上次使用该工具时,我得到了类似的东西。我可以使用多边形工具来获得多边形。
约翰斯,2016年

谢谢您的回答,我在哪里可以找到多边形工具?
马克·怀特

可以在此处找到多边形-处理工具箱,QGIS地理算法,矢量几何工具。
klewis

我试过了,但是当我运行多边形生成器时,我得到一个空的形状文件:-(
Mark White

您可以将shapefile上传到保管箱或类似文件吗?
AndreJ

Answers:


16

Polygonize从处理工具箱中的工具仍然工作正常,我就简单的线条:

在此处输入图片说明

但是,线必须相交或共享公共顶点。而且线条应该没有自相交。

您可能需要捕捉角顶点以使其起作用。我通常将顶点的捕捉公差设置为10像素。


1
将线转换为多边形时,我也面临相同的问题。“多边形化”工具解决了该问题。 gis.stackexchange.com/a/211794/62237
Sjs

7

如果找不到该Polygonize工具,则只是一个提示。在我的QGIS 2.18.3安装(Windows)中,无法在“工具箱”中找到该Polygonize工具Vector geometry tools。我花了一些时间才意识到我需要python-shapely使用OSGeo4W 安装该库(感谢Nick Hopton:QGIS中的Perfect Polygons)。


谢谢!我很困惑很长时间,因为Windows上的QGIS开箱即用,它具有仅适用于栅格的多边形化工具。可能需要或可能不需要的另一步骤是启用“处理>>选项>>提供程序”下的QGIS地理算法
matt wilkie

感谢您的回答。我以为我疯了,找不到它了……
gisnside

3

查看您的图像,我认为每条线都没有完全包含一个区域,这些线只是充当围栏,一开始并没有重新连接。多边形是从线条的末端创建的,因此“线条到多边形”工具可以正常工作,其数据就是问题所在。

恐怕我唯一想到的就是将新的多边形图层数字化。值得庆幸的是,QGIS使用2.14中提供的跟踪数字化工具(磁铁图标)使这一操作变得非常容易。


0

如果没有孔,我将创建一个具有一个足以覆盖整个区域的多边形的临时图层。然后,将其与您的线到多边形结果相交,并在必要时将其进一步拆分。


0

在QGIS 2.18和QGIS 3.4上测试

我可以建议使用"Virtual Layer"通过Layer > Add Layer > Add/Edit Virtual Layer...

假设我们在中有五个线要素"lines",请参见下图。

例

通过以下查询,可以实现结果。

SELECT l.id, l.NAME, MakePolygon(AddPoint(l.geometry,StartPoint(l.geometry)))
FROM lines AS l
GROUP BY l.id

输出的虚拟层看起来像

结果_1

@AndreJ所提到的,这些线应相交或共享共同的顶点。而且线条应该没有自相交。关于清理层的拓扑,我建议您探索v.cleanGRASS工具集。


如果线条具有自相交,则可以将ConvexHull与以下查询一起使用

SELECT l.id, l.NAME, ConvexHull(AddPoint(l.geometry,StartPoint(l.geometry)))
FROM lines AS l
GROUP BY l.id

案件

输出量


参考文献:


0

如果折线彼此重叠,则Polygonize工具无法按以下方式进行处理:

在此处输入图片说明

但是该Lines to polygons工具按预期方式工作,如下所示:

在此处输入图片说明

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.