是否可以在QGIS中对多边形进行平滑或通用化处理,也许可以通过使用诸如通用生成器插件之类的线来实现?
由于多种原因,这不适用于我的多边形。

#1 楼

您可以使用:

Vector menu -> Geometry tools -> Simplify Geometries






除此之外,您可以在postgis中使用Douglas-Peucker算法同样,因此您可以在postgis中使用,然后在qgis中添加postgis层。您可以在此处找到有关“简化”的信息:减轻几何图形的重量。


评论


这简化了线条,使它们更加锯齿。有没有一种方法可以使它们平滑(我想必须对它们进行插值)?

–内特·韦塞尔(Nate Wessel)
2012年12月23日在17:13

简化只是从直线或多边形中删除顶点,这些顶点仍会留下锯齿状的线。如果要平滑线,则需要插入Generalizer。

–MicheleTobias
2014年8月19日在2:48

有关其他信息,此工具已在QGIS 2.16中移至“处理”工具箱/“ QGIS地理算法” /“矢量几何”工具/“简化几何”

–gisnside
2016年9月9日15:43

#2 楼

阿拉贡的答案很适合推广。布莱恩(Bryan)的回答对平滑处理很有帮助,但有点令人费解。以下是用于平滑处理的两种方法:使用“处理”工具箱中的GRASS v.generalizer工具。这是Bryan答案中的QGIS Generalizer插件所基于的模块。 GRASS工具使您可以使用多边形,从而避免了转换为直线并再次返回的步骤。这是一个出色的工具,具有许多用于平滑/泛化的算法。只需以适当的数量缓冲多边形(您的调用取决于数据的性质和所需的平滑度)。然后通过对缓冲区距离应用相同的值来取消缓冲,但是这次使其为负。如果您是第一次溶解缓冲液,通常可以根据需要同时消除小间隙或甜甜圈孔(尽管这并非总是可取的,因此在选择溶解之前请仔细考虑)。顶点(尤其是使用buffer-debuffer方法)。平滑后,您可以按照Aragon的答复应用概括。

评论


Paul Ramsey很好地演示了缓冲/解缓冲方法:消除复杂性

–马特·威尔基
2014年10月3日在16:49

好主意!我同时使用了Ramer(线)和基于区域的两种方法,后者提供了更平滑的多边形,但仍然看起来像铁丝网。希望这种方法更好。

–culebrón
15年11月17日在18:51

#3 楼

我还很幸运地使用了QGIS Generalizer插件(启用实验性插件),然后:

Vector > Geometry Tools > Polygons to lines


然后使用Generalizer插件来平滑线条和顶点

Plugins > Generalizer > Generalizer
Algorithm: "Chaiken's Algorithm"


然后将线变回多边形四舍五入。不得不在线和多边形之间来回切换有点笨拙,但这是可行的。我知道也可以通过Grass进行此操作,但是我发现它们很难设置。

评论


这是一种有用的方法:但是,我的多边形中有孔,无法使用lines-> polygon工具重新创建它们

– Djana
16-10-11在13:32

#4 楼

现在可以通过Smooth geometry使用Processing Toolbox > QGIS geoalgorithms > Vector Geometry Tools算法。


获取锯齿状几何对象

设置选项(我将Iterations字段更改为5,并对结果)

获取平滑对象



评论


“平滑几何算法”仍然是有效的选择吗?由于使用其他算法无法获得理想的结果,因此我在安装QGIS 2.14时一直在寻找该算法,但找不到。然后,我安装了QGIS 2.18.16,但仍无法在处理工具栏中找到该算法。非常感谢您发现或安装它的任何帮助。

–塔雅
18年1月28日在14:29

好的,重新启动系统后找到我自己的问题的解决方案。在QGIS 2.18的全新安装完成后,处理插件出现问题。重新启动系统,QGIS解决了这个问题,我可以在处理工具箱中看到“平滑几何算法”。

–塔雅
18年1月28日在17:50

我应该更频繁地检查gisSE :)很高兴您找到了解决方案

– Mykola Kozyr
18年1月29日在8:03

我认为您缺少一步了……我的QGIS安装有法语版本,所以我自己不能完全添加一步,但是我不得不选择“ lisser”。

–user3386170
18-09-18在15:34

#5 楼

右键单击主板(在顶部),然后激活“工具箱”->参见下图