如何找到与多边形的垂直距离?

问题描述

如果该多边形中有坐标,我现在有 n 个坐标,我可以从中创建一个多边形,那么我如何找到点和多边形的垂直距离?

coords = [(45.888106581826065,8.512891340789281),(45.89087605100282,8.51131888355673),(45.89242907135495,8.51043574866833),(45.88810733356788,8.512894063368899),(45.890876868519385,8.51132182341189),(45.892063379278696,8.510647148893547),(45.89243094789967,8.510442653438174),(45.88811958097381,8.512938419782168),(45.89088904461223,8.51136560966078),(45.89207575921023,8.510692030810025),(45.89244290698806,8.51048665710127),(45.88813186579548,8.512982911786311),(45.89090145183551,8.511410227156235),(45.89245416375836,8.510528076647585),(45.88813271861146,8.512986000437545),(45.89090242476677,8.511413725908412),(45.89245495631277,8.510530992872562)]

需要检查的点是否在多边形中:

p2 = Point(45.88831,8.51283)

检查坐标(p2)是否在多边形中:

poly = MultiPoint(coords).convex_hull
    if p2.within(poly):
        print("Givien point is in polygon")

我尝试使用 boundary.distance 函数求距离,得到的结果为 4.7144012366024 但不确定它是垂直距离还是其他什么!

print(poly.boundary.distance(p2))
#output: 4.71440123660249

谁能帮我得到点的垂直距离?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)