Tag: pythagorean

原始地理坐标与图形节点之间的最短路径

我已经实现了一个简单的Dijkstra算法,用于在Java上查找.osm地图上的最短路径。 从.osm文件创建的图形中的路径查找效果非常好。 但是,如果用户的当前位置和/或目的地不是此图的节点(只是原始坐标),我们如何将这些坐标“链接”到图形以进行寻路工作? 简单直接的解决方案“找到最接近当前位置节点并绘制直线”似乎不太现实。 如果我们遇到附图所示的情况怎么办? (UPD) 这里的问题是,在我们开始任何“智能”寻路算法(如Dijkstra’s)之前,我们将当前位置与图形“链接”,但它只是根据毕达哥拉斯定理的一个愚蠢的公式(从斜方解释定义的斜边)找到最近的节点。地理坐标和这个公式不是“路径” – 它不能考虑障碍和节点类型。 换句话说 – 如果B是图中的节点,我们如何找到A和B之间的最短路径,而A不是节点? 你有没有听说过这个问题的其他解决方案?