現在の位置を取得し、ユーザーが目的地を選択するアプリケーションがあります。これら 2 つの出発地は、Google にクエリを実行します :
そして、目的地に到達するために「向きを変える」場所を含むxmlを取得します
xml を読んだ後、xml の最初のポイントと 2 番目のポイントの間のパスをトレースします。
API の変更前は、パスは路上で完璧でしたが、現在は次の画像のようになっています。
描画に使用するコード:
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);
}
}