【发布时间】:2015-10-23 21:24:24
【问题描述】:
假设我有以下多边形和点:
>>> poly = Polygon([(0, 0), (2, 8), (14, 10), (6, 1)])
>>> point = Point(12, 4)
我可以计算点到多边形的距离...
>>> dist = point.distance(poly)
>>> print(dist)
2.49136439561
...但我想知道最短距离测量到的多边形边界上点的坐标。
我最初的方法是通过点到多边形的距离来缓冲该点,并找到该圆与多边形相切的点:
>>> buff = point.buffer(dist)
但是,我不确定如何计算这一点。这两个多边形不相交,所以list(poly.intersection(buff)) 不会给我那个点。
我在正确的轨道上吗?有没有更直接的方法?
【问题讨论】:
-
@Oleg,我不相信这是重复的。正如我上面提到的,计算到多边形的最小距离没有问题。我正在尝试在多边形边界上找到测量最小距离的点。