使用Google Directions API显示行车路线

时间:2012-08-13 05:14:38

标签: objective-c mapkit

在我的应用程序中,我创建了一条从源到目的地的路线,并使用谷歌路线api,也在文本框中显示行车路线。我正在以json格式解析方向响应并显示html指令。 问题是假设我在A位置并且在B位置转弯,那么当我到达B而不是在那之前我得到与B位置相关的html指令。

我用来显示路线的逻辑是:

1. Parse the json response and store the html instructions and their relevant coordinates   in a array
2. Checking the current updated location
3. Checking whether the current updated location value is present in the array, if present then displaying the html instruction corresponding to the coordinate

1 个答案:

答案 0 :(得分:0)

我通过计算当前更新位置和结束位置之间的距离来解决了这个问题,如果这两个坐标之间的距离小于100米,那么我正在显示该坐标的html指令。

您可以使用以下代码计算两个坐标之间的距离:

CLLocation *currentLoc = [[CLLocation alloc] initWithLatitude:startLat longitude:startLong]
CLLocation *endLoc = [[CLLocation alloc] initWithLatitude:endLat longitude:endLong];
CLLocationDistance meters = [endLoc distanceFromLocation:currentLoc];