iOS - 根据Google Maps Directions API响应构建折线

时间:2016-04-20 12:52:20

标签: ios google-maps-sdk-ios google-polyline

如何从Directions API JSON响应中获取polyline

使用overview_polyline不是一个选项,因为它只是实际polyline的平滑版本。

我也尝试从步骤中获取开始和结束位置坐标,但这些只会给我一个非常不准确的polyline,因为它们只包含一些坐标。

如何从“路线”回复中获得准确的polyline

编辑:使用@SaxonDruce答案,我可以获得准确的折线,但它们看起来像这样:

enter image description here

2 个答案:

答案 0 :(得分:0)

根据the sample response,你需要的东西相当于:

response.routes[0].legs[0].steps[i].polyline.points

所以,得到第一条路线,然后是第一条路线,然后循环步骤,然后得到折线,然后得到分数。

答案 1 :(得分:0)

要添加到saxon druce的答案,您可以循环第一条腿的所有步骤并组合所有点以形成折线。

List<LatLng> points = new ArrayList<>();
for (DirectionsStep step : legs[i].steps) {
    points.addAll(step.polyline.decodePath());
}
EncodedPolyline legPolyline = new EncodedPolyline(points);