Verschieben Sie die Annotation auf Map wie Uber iOS-Anwendung

8

Ich arbeite an einem Projekt, bei dem ich die ähnliche iOS-Anwendung für UBER und OLA erstellen muss, wo sich das Auto basierend auf dem Standort bewegt. Ich bin auf der Suche nach einer Art von Bibliothek, die Autos dazu bringen kann, sich zu bewegen und wie OLA reibungslos zu fahren. Bisher konnte ich das Auto von einem Breitengrad zum anderen bewegen. Aber der komplexe Teil ist, wie man dreht und stellt sicher, dass das Auto von vorne nach vorne, wenn man in die Richtung bewegt.

Finden Sie den folgenden Screenshot für das gleiche.

    
Ramesh Sharma 17.11.2016, 08:53
quelle

1 Antwort

37

Eigentlich hatte ich auch eine Anforderung in meiner vorherigen iOS-Anwendung, also finden Sie die folgende URL zum Herunterladen des Codes und überprüfen Sie es.

Link für iOS-Karte: Ссылка

  

Umgebung: Xcode 8 und Objective-C

Hervorhebung des Codes, den ich gemacht habe.

Damit die Funktion zum Verschieben des Autos wie bei der Uber iOS-Anwendung ausgeführt werden kann, müssen Sie zuerst den Winkel zwischen dem alten und dem neuen Standort berechnen. Bitte finden Sie den folgenden Code für die Berechnung.

%Vor%

Wenden Sie dann den Winkel auf die bestimmte Anmerkung zum Verschieben an. Finden Sie den folgenden Code für das gleiche.

%Vor%

Für Google Maps

Link für Google Map: Ссылка

  

Wie führe ich das Projekt aus?

  1. Laden Sie das Projekt von oben über den Dropbox-Link herunter.
  2. Rufen Sie MapsAPIKey über den Link auf.
  3. Starten Sie die Cocoapods, um die Google Map SDK für iOS zu installieren.

Erstellen Sie das Objekt von GMSMarker.

%Vor%

Ermitteln Sie den Winkel zwischen zwei Positionen und wenden Sie sie zur Berechnung des Winkels an. Verwenden Sie dazu die obige Funktion.

%Vor%

Wie in der Apfelkarte .transform nehmen Sie das Radiant, aber in der Google-Karte .rotation nimmt den Grad an.

Finden Sie die folgende GIF-Darstellung, wie sie auf der Karte aussieht.

Um die Funktionalität zu erreichen, hatte ich die .csv-Datei erstellt, in der ich 1000 Datensätze für Längen- und Breitengrad hinzugefügt hatte.

Hinweis: Sie erhalten den Winkel basierend auf dem Standort. Manchmal kommt es vor, dass Sie aufgrund des Standorts nicht den richtigen Winkel erhalten, da dieser ganz von Ihrem Standort abhängt.

Hoffe, es funktioniert für dich !!!

    
Ramkrishna Sharma 17.11.2016, 09:28
quelle