Have a look on the code. It's simply created using Html and JavaScript.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 | <html> <head> <title>Getting The Direction Between Two Markers In Google Map Using Google MAP API</title> <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?sensor=false&libraries=geometry,places"></script> <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.10.1.min.js"></script> </head> <body> <div id="map-canvas" style="height: 75%;"></div> <div> <strong>From Location</strong><br /> <span>Latitude : </span> <input type="text" id="fromLat" /> <span>Longitude : </span> <input type="text" id="fromLng" /> <br /><br /> <strong>To Location</strong><br /> <span>Latitude : </span> <input type="text" id="toLat" /> <span>Longitude : </span> <input type="text" id="toLng" /> <br /><br /> <div id="direction"></div> </div> <script type="text/javascript"> var map; var fromLat = 6.928940573589038; var fromLng = 79.87219331750487; var toLat = 6.929110981212029; var toLng = 79.87013338098143; var fromIcon = 'https://chart.googleapis.com/chart?chst=d_map_pin_letter&chld=O|FFFF00|000000'; var toIcon = 'https://chart.googleapis.com/chart?chst=d_map_pin_letter&chld=D|FF0000|000000'; loadMap(); setFromMarker(); setToMarker(); function loadMap() { map = new google.maps.Map(document.getElementById('map-canvas'), { mapTypeId: google.maps.MapTypeId.ROADMAP, center: new google.maps.LatLng(fromLat, fromLng), zoom: 15 }); } function setFromMarker() { var fromMarker = new google.maps.Marker({ map: map, position: new google.maps.LatLng(fromLat, fromLng), icon: fromIcon, animation: google.maps.Animation.DROP, draggable: true }); google.maps.event.addListener(fromMarker, 'dragend', function (event) { fromLat = event.latLng.lat(); fromLng = event.latLng.lng(); setLatLngDetails(); }); } function setToMarker() { var toMarker = new google.maps.Marker({ map: map, position: new google.maps.LatLng(toLat, toLng), icon: toIcon, animation: google.maps.Animation.DROP, draggable: true }); google.maps.event.addListener(toMarker, 'dragend', function (event) { toLat = event.latLng.lat(); toLng = event.latLng.lng(); setLatLngDetails(); }); } function setLatLngDetails() { $("#fromLat").val(fromLat); $("#fromLng").val(fromLng); $("#toLat").val(toLat); $("#toLng").val(toLng); getDirection(); } function getDirection() { var fromLocation = new google.maps.LatLng(fromLat, fromLng); var toLocation = new google.maps.LatLng(toLat, toLng); var service = new google.maps.DistanceMatrixService(); service.getDistanceMatrix({ origins: [fromLocation], destinations: [toLocation], travelMode: google.maps.TravelMode.DRIVING, unitSystem: google.maps.UnitSystem.METRIC, avoidHighways: false, avoidTolls: false }, callback_direction); } function callback_direction(response, status) { if (status != google.maps.DistanceMatrixStatus.OK) { alert('Error was: ' + status); } else { var origins = response.originAddresses; var destinations = response.destinationAddresses; var str = ''; for (var i = 0; i < origins.length; i++) { var results = response.rows[i].elements; if (results[0].status != 'ZERO_RESULTS') { for (var j = 0; j < results.length; j++) { str += origins[i] + '<strong> to </strong>' + destinations[j] + '<strong> : </strong>' + results[j].distance.text + '<strong> in </strong>' + results[j].duration.text + '<br/>'; } } else { str = 'No Direction Found.'; } } $("#direction").html(str); } } </script> </body> </html> |
When you are getting the direction between two locaions, you must specify the mode of the travel. Following are the travel modes supported by google.
google.maps.TravelMode.DRIVING
(Default) indicates standard driving directions using the road network.google.maps.TravelMode.BICYCLING
requests bicycling directions via bicycle paths & preferred streets.google.maps.TravelMode.TRANSIT
requests directions via public transit routes.google.maps.TravelMode.WALKING
requests walking directions via pedestrian paths & sidewalks.
Check My Other Articles About Google Maps.
1. Creating A Google Map Using Google Map API v3
2. Show Current Location In A Google Map Using Google Map API v3
3. Getting The Address Of Selected Location In Google Map Using Google Map API v3
4. Getting The Selected Latitude And Longitude From Google Map Using Google Map API v3
5. Google Map With Multiple Markers & Info Windows Using Google Map API v3
6. Getting The Direction Between Two Markers In Google Map Using Google MAP API
7. Getting The Direction Between Two Locations Using Google MAP API
8. Getting The Distance Between Two Markers In Google Map Using Google MAP API
9. Getting The Distance Between Two Locations Using Google MAP API
10. Getting The Nearest Places For A Location In Google Map Using Google MAP API
11. Google Map With InfoBubble
12. Google Maps Creating Polygon And Retrieving Coordinates