路线不尊重Android中的街道

时间:2012-08-31 22:10:38

标签: android google-maps google-maps-api-3

我有一个应用程序获取当前位置并且用户选择目的地,这两个起始位置,它查询Google: https://developers.google.com/maps/documentation/directions/

获取一个xml,其中包含我“转向”到达目的地的地方

读取xml后,跟踪xml的第一个和第二个点之间的路径,依此类推

在更改API之前,路径在街道上是完美的,但现在看起来像这样的图像:

image

我用来绘制的代码:

public void draw(Canvas canvas, MapView mapView, boolean shadow) {
    super.draw(canvas, mapView, shadow);

    Projection proj = mapView.getProjection();

    Point ponto1, ponto2;
    Path caminho = new Path();
    for (int i = 0; i < geoPoints.size() - 1; i++) {
        ponto1 = proj.toPixels(geoPoints.get(i), null);
        ponto2 = proj.toPixels(geoPoints.get(i + 1), null);

        caminho.moveTo(ponto2.x, ponto2.y);
        caminho.lineTo(ponto1.x,ponto1.y);

        canvas.drawPath(caminho, paint);
    }
}

1 个答案:

答案 0 :(得分:1)

这可能对你有帮助, 我为与你有同样问题的人写了一个广泛的答案。 看看它,希望它也能帮到你

https://stackoverflow.com/a/11357351/975959