检查一个地理位置是否落在两个地理位置内

Check if a geo location falls within two geo locations

所以,我正在尝试创建一个应用程序,用户可以在其中在地图上设置他的目的地 - 比方说从家到工作 - 然后(在 google 地图的帮助下)一条方向线在地图上显示以引导用户到达目的地,或在我们的示例中工作。 我在这里想要实现的是,我希望该应用程序显示用户上班途中或附近的任何咖啡馆,但我不确定如何解决这个令人头疼的问题。

有没有办法知道点 (C) 是否落在 A 和 b 之间的直线内?或接近 A 和 B 之间的线 factor(x) ?

我创建了一个gist which is a Swift translation of locationIndexOnEdgeOrPath function and all the other required functions present in PolyUtil.java

你需要传递的参数是你要检查的点的坐标和代表路径的点数组。 (你的case只包含起点和终点,所以只传这两个即可)

需要的其他参数是closed,表示是否应该从最后一个点到第一个点绘制一条线以关闭循环; geodesic表示是否考虑地球曲率

最后,toleranceEarth 是您需要指定如何 关闭 路径被视为 在路径 [=25] 上的最后一个参数=].