在 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