AndroidデバイスでGPSを使用してトラックをプロットしたい。
完成したルートを表示するのに問題はありませんが、移動中にトラックを表示するのが難しいと感じています。
これまでのところ、私はそれを行うための2つの異なる方法を見つけましたが、どちらも特に満足のいくものではありません。
方法1
PolylineOptions track = new PolylineOptions();
Polyline poly;
while (moving) {
Latlng coord = new LatLng(lat,lng); // from LocationListener
track.add(coord);
if (poly != null) {
poly.remove();
}
poly = map.addPolyline(track);
}
つまり、新しい座標を追加してから再度追加する前に、ポリラインを作成して削除します。
これはひどく遅いです。
方法2
oldcoord = new LatLng(lat,lng);;
while (moving) {
PolylineOptions track = new PolylineOptions();
LatLng coord = new (LatLng(lat,lng);
track.add(oldcoord);
track.add(coord);
map.addPolyline(track);
oldcoord = coord;
}
つまり、一連の単一のポリラインをプロットします。
これは方法1よりもはるかに高速にレンダリングされますが、特に低いズームレベルでは、各ポリラインが四角になり、実際に接触するのはコーナーのみであるため、かなりギザギザに見えます。
より良い方法はありますか?もしそうなら、それは何ですか?