Ich habe Breiten- und Längengrade für 2 Punkte in der Datenbank. Ich möchte, dass auf meiner Google Map eine Route von Punkt A nach Punkt B angezeigt wird.
Genau wie wir hier sehen (Google Maps Richtungen)
Wie zeichne ich diese Richtungslinie auf der Karte?
google-maps
google-maps-api-3
Yugal Jindle
quelle
quelle
Verwenden von Javascript
Ich habe eine funktionierende Demo erstellt, die zeigt, wie der Google Maps API Directions Service in Javascript über a verwendet wird
DirectionsService
Objekt zum Senden und Empfangen von RichtungsanfragenDirectionsRenderer
Objekt zum Rendern der zurückgegebenen Route auf der Kartefunction initMap() { var pointA = new google.maps.LatLng(51.7519, -1.2578), pointB = new google.maps.LatLng(50.8429, -0.1313), myOptions = { zoom: 7, center: pointA }, map = new google.maps.Map(document.getElementById('map-canvas'), myOptions), // Instantiate a directions service. directionsService = new google.maps.DirectionsService, directionsDisplay = new google.maps.DirectionsRenderer({ map: map }), markerA = new google.maps.Marker({ position: pointA, title: "point A", label: "A", map: map }), markerB = new google.maps.Marker({ position: pointB, title: "point B", label: "B", map: map }); // get route from A to B calculateAndDisplayRoute(directionsService, directionsDisplay, pointA, pointB); } function calculateAndDisplayRoute(directionsService, directionsDisplay, pointA, pointB) { directionsService.route({ origin: pointA, destination: pointB, travelMode: google.maps.TravelMode.DRIVING }, function(response, status) { if (status == google.maps.DirectionsStatus.OK) { directionsDisplay.setDirections(response); } else { window.alert('Directions request failed due to ' + status); } }); } initMap();
html, body { height: 100%; margin: 0; padding: 0; } #map-canvas { height: 100%; width: 100%; }
<script src="https://maps.googleapis.com/maps/api/js?sensor=false"></script> <div id="map-canvas"></div>
Auch auf Jsfiddle: http://jsfiddle.net/user2314737/u9no8te4/
Verwenden von Google Maps Web Services
Sie können die Webdienste mithilfe eines API_KEY verwenden, der eine Anforderung wie folgt ausgibt:
Ein API_KEY kann in der Google Developer Console mit einem Kontingent von 2.500 kostenlosen Anfragen pro Tag abgerufen werden.
Eine Anforderung kann JSON- oder XML-Ergebnisse zurückgeben, mit denen ein Pfad auf einer Karte gezeichnet werden kann.
Die offizielle Dokumentation für Webdienste mit der Google Maps Directions-API finden Sie hier
quelle
In Ihrem Fall handelt es sich hier um eine Implementierung mit dem Richtungsdienst .
quelle
quelle
Verwenden Sie die Anweisungen API .
Machen Sie einen Ajax-Anruf, dh
und analysieren Sie dann die Antwort
quelle
Ich verwende ein Popup, um die Karte in einem neuen Fenster anzuzeigen. Ich benutze die folgende URL
HTML-Snippet
quelle