【问题标题】:Check intersections between points and polygons in QGIS检查QGIS中点和多边形之间的交点
【发布时间】:2017-02-02 02:16:43
【问题描述】:

我有两个数据层,一个带有点,一个带有多边形。两个图层都有 ID,我想检查 ID x 的点是位于 ID x 的多边形内部还是外部。

有人知道怎么做吗?

谢谢, 玛丽

【问题讨论】:

    标签: qgis


    【解决方案1】:

    在 python 控制台中为您提供逗号分隔列表的一个潜在解决方案是从 python 控制台运行一个小脚本:

    mapcanvas = iface.mapCanvas()
    layers = mapcanvas.layers()
    
    for a in layers[0].getFeatures():
        for b in layers[1].getFeatures():
            if a.geometry().intersects(b.geometry()):
                print a.id(),",",b.id()
    

    这应该会产生一个特征与另一个特征相交的情况。在我的测试中,图层的顺序并不重要,但是,两个图层都必须使用相同的坐标参考系统,因此如果两个图层具有不同的参考系统,您可能需要重新投影数据。这适用于多边形中的点和与多边形相交的多边形(我相信它也适用于线)。

    这样的答案:https://gis.stackexchange.com/questions/168266/pyqgis-a-geometry-intersectsb-geometry-wouldnt-find-any-intersections 可能有助于进一步完善此类脚本,并且是此答案的主要来源。

    【讨论】:

      猜你喜欢
      • 2014-08-24
      • 1970-01-01
      • 2018-05-01
      • 2021-11-12
      • 2011-09-26
      • 1970-01-01
      • 2022-01-03
      • 2014-10-10
      • 1970-01-01
      相关资源
      最近更新 更多