如何修复图层中的无效几何图形以便在 qgis 的 QNEAT3 插件中使用它?

问题描述 投票:0回答:0

因为我目前在 QGI 中使用辅助功能,所以我使用 QNEAT3 插件和“Iso-Area as Polygons (from Layer)”。使用来自开放数据源的形状运行它没有任何问题后,我不得不使用 OSM 数据创建自己的形状并且我总是收到此错误消息:

[QNEAT3Algorithm] 这是一个 QNEAT3 算法:'Iso-Area as Polygons (from Layer)' 追溯(最近一次通话): 文件“C:\Users/Nutzer/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\QNEAT3 lgs\IsoAreaAsPolygonsFromLayer.py”,第 225 行,在 processAlgorithm input_coordinates = getListOfPoints(起点) 文件“C:\Users/Nutzer/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\QNEAT3\Qneat3Utilities.py”,第 94 行,在 getListOfPoints 返回 [f.geometry().asPoint() for f in qgsfeatureiterator] 文件“C:\Users/Nutzer/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\QNEAT3\Qneat3Utilities.py”,第 94 行,在 返回 [f.geometry().asPoint() for f in qgsfeatureiterator] ValueError:空几何无法转换为点。

0.19 秒后执行失败

我预计在此之后我修复了几何轮胎并且我不会收到相同的错误消息。 我的(不成功的)解决方法是这样的:

  • 使用“检查有效性”检查几何:没有返回无效特征,每个特征都是有效的(我在工具中使用了 QGIS 和 GEOS 方法)
  • 在较小的子层中运行它们(希望之后合并)
  • 多次重新安装QNEAT3
  • 在 shapefile 上应用“修复几何”和“捕捉几何到图层”工具

属性表的4列分别是:osm_id、code、fclass、name

有趣的是,使用“服务区域(来自图层)”可以处理相同的数据,但使用这种方式我只收到等值线,而多边形更适合事后分析。

老实说,我不知道错误是什么/在哪里以及如何正确解决。 非常感谢您的帮助

干杯

qgis
© www.soinside.com 2019 - 2024. All rights reserved.