Drehen Sie den Marker auf der Grundlage der Fahrtrichtung

Ich habe einen Marker in meiner Google Maps Karte, die so aussieht:

Pic

Wenn der Benutzer fährt, möchte ich ihn auf der Grundlage seiner Fahrtrichtung drehen. Wie kann ich das erreichen? Ich sollte vermutlich vorherigen Standort und aktuelle Standortkoordinaten zur Berechnung verwenden, aber ich habe keine Ahnung, wie.

  • Auffrischen einer Seite in ionic2
  • Holen Sie sich Blickwinkel der Android-Kamera-Gerät
  • Rotierende Bild auf einer Leinwand in android
  • "Ausnahme: Fehler bei der Instanziierung von t! Primary Outlet bereits registriert. "In cordova angular2 app
  • Ionic 2 dev und prod Umgebungsvariablen
  • Bekomme Neigungswinkel Android
  • Erhalten Sie Neigungswinkel vom androiden Beschleunigungsmesser
  • One Solution collect form web for “Drehen Sie den Marker auf der Grundlage der Fahrtrichtung”

    Wenn Sie GPS für die Suche nach dem Benutzer verwenden, dann das Location das Sie in onLocationChanged enthält das Lager .

    Wenn Sie nur die beiden Koordinaten haben (zB haben Sie nur Koordinaten vom Netzplatzanbieter), können Sie Location.bearingTo() , um die Lagerung von zwei Koordinaten zu berechnen:

     Location prevLoc = ... ; Location newLoc = ... ; float bearing = prevLoc.bearingTo(newLoc) ; 

    Wenn du ein Lager hast, kannst du die Markierung der Markierung mit MarkerOptions.rotation() :

     mMap.addMarker(new MarkerOptions() .position(markerLatLng) .icon(BitmapDescriptorFactory.fromResource(R.drawable.map_marker)) .anchor(0.5f, 0.5f) .rotation(bearing) .flat(true)); 

    Du musst den Anker auf den Punkt stellen, den du drehen möchtest, und es ist auch der Punkt, an dem du an der Stelle sein möchtest, die du auf den Marker gesetzt hast. (0,5, 0,5) ist die Mitte des Bildes.

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.