Anzeige ein bewegender track auf Android-Gerät
Ich möchte plot meine Strecke mit GPS auf einem Android-Gerät.
Habe ich kein problem, die Anzeige einer route abgeschlossen, bin aber finden es schwierig, zeigen die track-so wie ich bin bewegt.
Bisher, die ich gefunden habe auf 2 verschiedenen Arten zu tun, die aber weder besonders zufriedenstellend.
METHODE 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);
}
ie den Aufbau der Polylinie entfernen Sie vor dem hinzufügen der neuen Koordinaten und Sie dann wieder hinzufügen.
Dies ist entsetzlich langsam.
METHODE 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;
}
ie Handlung eine Reihe von einzelnen Polylinien.
Während macht dies viel schneller als Methode 1, es sieht ziemlich gezackt, besonders bei niedrigeren zoom-Stufen, da jeder Polylinie ist quadratisch und es ist nur die Ecken, die wirklich berühren.
Gibt es eine bessere Art und Weise und, wenn ja, was ist es?
InformationsquelleAutor Doug Conran | 2013-03-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es eine einfache Lösung, die mit den 2.0 Maps API. Sie erhalten eine schöne glatte Strecke Linie mit drei Schritten:
erstellen Sie eine Liste von LatLng Punkte wie:
Fügen Sie der route Punkte auf der Liste (könnte/sollte getan werden in einer Schleife):
Erstellen Sie eine Polylinie, und füttern Sie die Liste der LatLng Punkte als solche:
Probieren Sie es aus!
Können Sie pleasse lassen Sie mich wissen, was ist mapPoint in die Methode routenpunkten.add(mapPoint);
mapPoint ist einfach nur ein individuelles LatLng-Objekt, d.h., einen der gewünschten Punkte für Ihre Karte anzeigen
InformationsquelleAutor PeteH