Pin route (right click removes)
Allow user to pin their route
by mrshozza
HTML
<div id="floating-panel">
<!--<input onclick="clearMarkers();" type=button value="Hide Markers">-->
<input onclick="showMarkers();" type=button value="Show All Markers">
<input onclick="deleteMarkers();" type=button value="Delete Markers">
<input onclick="shortestRoute();" type="button" value="Fastest/Shortest">
</div>
<!--
<div>
<strong>Results</strong>
</div>
<div id="output"></div>
-->
<div id="map"></div>
<!-- Replace the value of the key parameter with your own API key. -->
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=AIzaSyB8jrhWL-OtWuvh6wgs_XeAUWNro2psFsk&callback=initMap">
</script>
CSS
#floating-panel {
position: absolute;
top: 10px;
left: 25%;
z-index: 5;
background-color: #fff;
padding: 5px;
border: 1px solid #999;
text-align: center;
font-family: 'Roboto','sans-serif';
line-height: 30px;
padding-left: 10px;
}
html, body {
height: 100%;
margin: 0;
padding: 0;
}
#map {
height: 100%;
width: 100%;
}
JavaScript
var map;
var markers = [];
var mydestsraw=[]
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
center: {lat: 52, lng: -2},
zoom: 6
});
google.maps.event.addListener(map, 'click', function(event) {
addMarker(event.latLng);
});
google.maps.event.addListener(map, 'rightclick', function(event) {
deleteMarker(event);
});
/* function placeMarker(location) {
var marker = new google.maps.Marker({
position: location,
map: map
});
map.setCenter(location);
}
*/
function shortestRoute(){
alert("hello");
}
//for (permutation of permutations)
// console.log(permutation) //Use
}
function permut(string) {
if (string.length < 2) return string; // This is our break condition
var permutations = []; // This array will hold our permutations
for (var i=0; i<string.length; i++) {
var char = [string[i]];
var remainingString = string.slice(0,i).concat( string.slice(i+1,string.length)); //Note: you can concat Strings via '+' in JS
permut(remainingString).forEach(function(val){
permutations.push(char.concat(val))
})
}
return permutations;
}
function route(permutation,myorigin){
var myroute=myorigin[0]
for (var i=0; i<permutation.length; i++){
// myroute += '\n'+myorigin[permutation[i]]+" ("+mydestsraw[permutation[i]].getTitle()+")"
myroute += '\n'+mydestsraw[permutation[i]].getTitle()
}
return myroute
}
function shortestRoute(){
var quickest=1
var shortest=1
var myorigin = ['Cambridge, England']
// On the syandard plan the max dests is 9!
//var mydests = ['Wakefield, England','Liverpool, England'] //,'Manchester, England','Hartlepool, England','Mirfield, England','Dewsbury, England','Birmingham, England','Leicester, England','Chorley, England']
//convert our markers to strings?
var mydests=[]
mydestsraw=[0]
for (var i=0;...