如何使用谷歌方向api或其他一些api为iPhone应用程序比较两个路线

我想比较两条路线,检查我的iPhone应用程序中是否相同。

有一个人X想要指向A点到B点,另一个人想要点A1到点B1。

我可以使用谷歌的这个方向API获得A到B之间的路线。

http://maps.googleapis.com/maps/api/directions/xml?origin=Point a A address&destination=Point B address&sensor=false

同样地,我可以得到A1到B1的路线。

但我在xmls中得到的纬度和经度不匹配(即使单个点不匹配)。 所以这是我的问题,如何匹配我想要知道的两条路线是否是相同的路线。

在此处输入图像描述

如果最佳路线A1B1实际上是路线AB的子集,则我希望匹配步骤的start_location和end_locations共享相似的经度和纬度,但这不是方向API的要求。 从A到B的最佳路径可能会通过A1和B1,但这并不意味着从A1到B1的最佳路径将共享完全相同的步骤。

我认为你想要做的是查看为路线段返回的折线点,看看它们是否会以正确的顺序通过A1和B1。 您可以使用此算法将编码的折线字符串展开为纬度和经度列表。

在GIS上发布了一个关于比较两条折线的问题。 请看这个链接 –

https://gis.stackexchange.com/questions/8799/how-to-compare-2-polyline-datasets