-
Notifications
You must be signed in to change notification settings - Fork 79
/
Copy pathfrance-trip.html
113 lines (103 loc) · 4.7 KB
/
france-trip.html
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
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
<meta name="description" content="Randy Olson uses machine learning to find the optimal road trip across France.">
<meta name="author" content="Randal S. Olson">
<title>An optimal road trip across France according to machine learning</title>
<style>
html, body, #map-canvas {
height: 100%;
margin: 0px;
padding: 0px
}
#panel {
position: absolute;
top: 5px;
left: 50%;
margin-left: -180px;
z-index: 5;
background-color: #fff;
padding: 10px;
border: 1px solid #999;
}
</style>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&signed_in=true"></script>
<script>
var directionsDisplay1, directionsDisplay2;
var directionsDisplay3, directionsDisplay4;
var markerOptions = {icon: "http://maps.gstatic.com/mapfiles/markers2/marker.png"};
var directionsDisplayOptions = {preserveViewport: true,
markerOptions: markerOptions};
var directionsService = new google.maps.DirectionsService();
var map;
function initialize() {
var mapOptions = {
zoom: 6,
center: new google.maps.LatLng(46.2157467, 2.2088258)
};
map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
directionsDisplay1.setMap(map);
directionsDisplay2.setMap(map);
directionsDisplay3.setMap(map);
directionsDisplay4.setMap(map);
}
function calcRoute(start, end, routes) {
switch (start) {
case "Parc national des Écrins, France":
directionsDisplay1 = new google.maps.DirectionsRenderer(directionsDisplayOptions);
break;
case "Vieux-Lille, Lille, France":
directionsDisplay2 = new google.maps.DirectionsRenderer(directionsDisplayOptions);
break;
case "Les Machines de l'île, Nantes, France":
directionsDisplay3 = new google.maps.DirectionsRenderer(directionsDisplayOptions);
break;
case "Promenade du Peyrou, Montpellier, France":
directionsDisplay4 = new google.maps.DirectionsRenderer(directionsDisplayOptions);
break;
}
var waypts = [];
for (var i = 0; i < routes.length; i++) {
waypts.push({
location:routes[i],
stopover:true});
}
var request = {
origin: start,
destination: end,
waypoints: waypts,
optimizeWaypoints: false,
travelMode: google.maps.TravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
switch (start) {
case "Parc national des Écrins, France":
directionsDisplay1.setDirections(response);
break;
case "Vieux-Lille, Lille, France":
directionsDisplay2.setDirections(response);
break;
case "Les Machines de l'île, Nantes, France":
directionsDisplay3.setDirections(response);
break;
case "Promenade du Peyrou, Montpellier, France":
directionsDisplay4.setDirections(response);
break;
}
}
});
}
google.maps.event.addDomListener(window, 'load', initialize);
calcRoute("Parc national des Écrins, France", "Vieux-Lille, Lille, France", ["Vieux Lyon, Lyon, France", "Beaune, France", "Saline Royale d'Arc-et-Senans, France", "Neuf-Brisach, France", "Grande-Île de Strasbourg, Strasbourg, France", "Place Stanislas, Nancy, France", "Cathedrale Notre-Dame de Reims, France", "Centre Historique Minier, Rue d'Erchin, 59287 Lewarde, France"]);
calcRoute("Vieux-Lille, Lille, France", "Les Machines de l'île, Nantes, France", ["Cathédrale Notre-Dame d'Amiens, Place Notre Dame, Amiens, France", "La Tour Eiffel, Avenue Anatole France, Paris, France", "Foret de Fontainebleau, Fontainebleau, France", "Chartres Cathedral, France", "Etretat, France", "Mont Saint-Michel, France", "Carnac, France", "Marais salants de Guérande, Route des Marais, Guérande 44350, France"]);
calcRoute("Les Machines de l'île, Nantes, France", "Promenade du Peyrou, Montpellier, France", ["Abbaye de Saint-Savin-sur-Gartempe, Place de la Libération, Saint-Savin, France", "Crozant, France", "Parc naturel regional des volcans d'Auvergne, France", "Grotte de Lascaux II, France", "Le Miroir d'eau, Bordeaux, France", "Pyrenees National Park, France", "Place du Capitole, Toulouse, France", "Carcassonne, France"]);
calcRoute("Promenade du Peyrou, Montpellier, France", "Parc national des Écrins, France", ["Anse de Malmousque, Marseille, France", "Promenade des Anglais, Nice, France", "Golfe de Porto, France", "Massif du Mont Blanc, Chamonix, France"]);
</script>
</head>
<body>
<div id="map-canvas"></div>
</body>
</html>