在 Python 中检查点是否在多边形内的最快方法是什么?

首先,我们将使用mplPath.Path方法创建一个多边形并检查给定点是否在多边形中,我们将使用 poly_path.contains_point 方法。

脚步

  • 创建一个点列表来制作多边形。

  • 使用给定的顶点和代码创建一个新路径。mplPath.Path()

  • 使用contains_point()方法检查多边形中是否存在点 (200, 100) 。返回(闭合)路径是否包含给定点。=> 真

  • 使用contains_point()方法检查多边形中是否存在点 (1200, 1000) 。返回(闭合)路径是否包含给定点。=> 错误

示例

importmatplotlib.pathas mplPath

import numpy as np

poly = [190, 50, 500, 310]

poly_path = mplPath.Path(np.array([[190, 50],

                                    [50, 500],

                                    [500, 310],

                                    [310, 190]]))

point = (200, 100)

print(point, " 在多边形中: ", poly_path.contains_point(point))

point = (1200, 1000)

print(point, " 在多边形中: ", poly_path.contains_point(point))

输出结果
(200, 100) 在多边形中: True

(1200, 1000) 在多边形中: False

以上是 在 Python 中检查点是否在多边形内的最快方法是什么? 的全部内容, 来源链接: utcz.com/z/360421.html

回到顶部