在QGIS中计算多边形和线的顶点数量?


14

在QGIS中,是否有一种方法可以计算给定图层中的多边形和线的顶点数量,并创建一个包含这些值的单独字段?

我怀疑这是现场计算器中的某个函数,但找不到。

Answers:


14

点数-QGIS字段计算器中的简单公式:

num_points($ geometry)

请参见下面的屏幕截图:在这种情况下,每个特征的顶点数量将添加到属性表中的字段“顶点”。另外,您也可以创建“创建新字段”并在那里获取结果。

在此处输入图片说明


我是先创建一个称为“顶点”的字段,然后在计算完字段后汇总该字段(使用什么工具?)?将该信息添加到答案中可能会有所帮助。
克里斯汀·G。

1
感谢@Kristen G.,我使用该信息更新了答案。
jurajb

7

您可以使用出色的“ Vertices Counter”插件来实现此目的。您可以在此处查看分步指南:

计算层中顶点的数量


感谢Ujaval。恐怕python吓到我了,但我今天才去看看您的博客,它起作用了!非常感谢,很抱歉没有尽快查看。R
crichard75

1
看来此插件在QGIS 3.0+中不再可用
user3386170

正确。见对方的回答,您可以在现场计算器NUM_POINTS($几何)使用公式实现相同的
spatialthoughts

3

随着时间的流逝和版本的变化,一些有关最新QGIS 3.2和2.18.22 LTR的提示(截至2018年8月7日)。在QGIS 2.18中,Vertices Counter插件可以照常工作,但似乎尚未移植到QGIS3。但是幸运的是,您希望在六年前发现字段计算器中还有另一种解决方案。

有两个相关功能:

nodes_to_points()创建MULTIPOINT源几何体节点的几何,并

num_geometries()计算集合或MULTI...几何中的几何

因此结合这些功能并创建一个虚拟字段将完成此任务:

在此处输入图片说明

导致

在此处输入图片说明


2

在矢量菜单中查看,有一个“提取节点”工具。


谢谢乔瓦尼,但这不是我想要的。我只是尝试“提取节点”并计算“多边形中的点”。恐怕我要处理的shapefile由多个邻接的多边形组成。通过捕捉到顶点来创建多边形。提取节点会创建多个重叠点,这些重叠点最终会计数。我正在寻找一种计算每个单独多边形的节点的方法,因此正方形多边形可能具有4个节点,而不是邻接多边形中可能存在的16个或更多节点。
crichard75

然后,您需要将数据导入到完全拓扑的gis = GRASS中,您可以使用grass插件在qgis中进行操作。
乔凡尼·芒吉
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.