Ich war lange damit beschäftigt herauszufinden, wie man in HelloMapView eine Linie zwischen zwei (GPS) Punkten auf der Karte zeichnet, aber ohne Glück.
Könnte mir bitte jemand sagen, wie das geht.
Angenommen, ich verwende HelloMapView, das MapView erweitert. Muss ich Overlays verwenden? Wenn ja, muss ich die onDraw () -Methode des Overlays überschreiben und hier eine Linie zeichnen? Ich habe diese Dinge tatsächlich ausprobiert, aber ohne Ergebnis.
Vielen Dank im Voraus!
Antworten:
Danke für Ihre Hilfe. Endlich konnte ich eine Linie auf der Karte zeichnen. So habe ich es gemacht:
quelle
Für diejenigen, die wirklich nur eine einfache Linie ziehen wollen - es gibt in der Tat auch die kurze Kurzversion.
von https://developers.google.com/maps/documentation/android/reference/com/google/android/gms/maps/model/Polyline
quelle
quelle
Dies ist der vollständige Quellcode zum Zeichnen des Richtungspfads von der Breite und Länge der Quelle zur Breite und Länge des Ziels. Ich habe den obigen Code so geändert, dass er eher für Breiten- und Längengrade als für Quelle und Ziel passt. Jeder, der über sein GPS auf seinen Breiten- und Längengrad zugreift, kann die Richtung von seinem GPS-Gerät zu den Zielkoordinaten abrufen.
Dank der obigen Antworten konnten wir eine solche Änderung vornehmen und die Pfadrichtung ermitteln.
Hoffe, es hilft für andere Stack Overflow-Benutzer
quelle
Dies kann auch mit Absichten geschehen:
quelle
Mit Google Maps Android API v2 ist das ganz einfach
Kopieren Sie einfach das Beispiel aus der Entwicklerdokumentation
(Natürlich müssen Sie zuerst Ihre Karte starten)
quelle
Ja, Sie müssen Overlays verwenden.
Sie müssen die MapView-Overlays abrufen und Ihr neues Overlay hinzufügen.
Ihre Klasse erweitert Overlay, eine transparente Leinwand, auf der Sie wie auf jeder anderen Leinwand zeichnen können.
Sie können mapView.getProjection () verwenden, um die Projektion der Kartenansicht abzurufen.
...
Weitere Informationen finden Sie hier: http://blogoscoped.com/archive/2008-12-15-n14.html
quelle
Sie können die Projektion vom MapView-Objekt abrufen, das an die draw () -Methode übergeben wird: mapv.getProjection (). ToPixels (gP1, p1);
quelle
Route Helper Klasse
quelle
Ich werde nur ein Zeichnen mit einem Rechteck finden,
mapview
nur wir wollen die Farbe ändern, wie wir wollenEmptyOverlay.java
MapExampleActivity.java
MapOverlay.java
siehe diese http://n3vrax.wordpress.com/2011/08/13/drawing-overlays-on-android-map-view/
quelle
quelle
Holen Sie sich einfach die Route von dieser URL und machen Sie als nächstes ...
Hier habe ich Ursprung als Delhi Breite und Länge & Ziel als Chandigarh Breite Länge
https://maps.googleapis.com/maps/api/directions/json?origin=28.704060,77.102493&destination=30.733315,76.779419&sensor=false&key= "PUT YOUR MAP API KEY"
quelle
Das hat bei mir funktioniert. Mit der hier erwähnten Methode konnte ich Polylinien in Google Maps V2 zeichnen. Ich habe immer dann eine neue Linie gezeichnet, wenn der Benutzerstandort geändert wurde, sodass die Polylinie wie der Pfad aussieht, dem der Benutzer auf der Karte folgt.
Quellcode bei. Github: prasang7 / eTaxi-Meter
Bitte ignorieren Sie andere Module dieses Projekts, die sich auf die Entfernungsberechnung und die Benutzeroberfläche beziehen, wenn Sie nicht daran interessiert sind.
quelle