From b276fd7f43690c0d8cc1d2737f4c087e02d106da Mon Sep 17 00:00:00 2001 From: Brad Stein Date: Fri, 21 Sep 2018 02:41:47 -0500 Subject: [PATCH] Update MapScript.js --- MapTest/MapScript.js | 65 ++++++++++++++++++++++++++++++-------------- 1 file changed, 45 insertions(+), 20 deletions(-) diff --git a/MapTest/MapScript.js b/MapTest/MapScript.js index d98c589..80c13f1 100644 --- a/MapTest/MapScript.js +++ b/MapTest/MapScript.js @@ -1,29 +1,54 @@ -let map; function initMap() { - map = new google.maps.Map(document.getElementById('map'), { - center: {lat: 32.776, lng: -96.797}, - zoom: 10 + let directionsService = new google.maps.DirectionsService; + let directionsDisplay = new google.maps.DirectionsRenderer; + + let map = new google.maps.Map(document.getElementById('map'), { + center: {lat: 32.9608558, lng: -96.8530005}, + zoom: 13 }); - let home; - home = new google.maps.Marker({ - position: {lat: 32.9608558, lng: -96.8530005}, - map: map, - title: 'Home' - }); + // let home = new google.maps.Marker({ + // position: {lat: 32.9608558, lng: -96.8530005}, + // map: map, + // title: 'Home' + // }); + // + // let globe_runnner= new google.maps.Marker({ + // position: {lat: 32.972469, lng: -96.830857}, + // map: map, + // title: 'Globe Runner' + // }); - let globe_runnner; - globe_runnner = new google.maps.Marker({ - position: {lat: 32.972469, lng: -96.830857}, - map: map, - title: 'Globe Runner' + directionsDisplay.setMap(map); + document.getElementById('submit').addEventListener('click', function() { + calculateAndDisplayRoute(directionsService, directionsDisplay); }); +} - let unifocus; - unifocus = new google.maps.Marker({ - position: {lat: 32.9194354, lng: -96.9292158}, - map: map, - title: 'Unifocus' +function calculateAndDisplayRoute(directionsService, directionsDisplay){ + directionsService.route({ + origin: document.getElementById('start').value, + destination: document.getElementById('end').value, + optimizeWaypoints: true, + travelMode: 'DRIVING' + }, function(response, status) { + if (status === 'OK') { + directionsDisplay.setDirections(response); + let route = response.routes[0]; + let summaryPanel = document.getElementById('directions-panel'); + summaryPanel.innerHTML = ''; + // For each route, display summary information. + for (let i = 0; i < route.legs.length; i++) { + let routeSegment = i + 1; + summaryPanel.innerHTML += 'Route Segment: ' + routeSegment + + '
'; + summaryPanel.innerHTML += route.legs[i].start_address + ' to '; + summaryPanel.innerHTML += route.legs[i].end_address + '
'; + summaryPanel.innerHTML += route.legs[i].distance.text + '

'; + } + } else { + window.alert('Directions request failed due to ' + status); + } }); }