====== ExOutdoor : travail de synthèse ====== Objectif : créer un outil pour préparer son itinéraire de randonnée en montagne. Il y a plusieurs manière de répondre à cet objectif, voici un scénario partiel avec quelques premières étapes. - construire une baselayer pertinente en utilisant les jeux de données OSM fournis par MapBox pour un message carto correspondant au mieux à l'objectif; - utiliser le service de routing Google Directions pour faciliter la tâche de traçage sur la carte de l'itinéraire : on choisit un point de départ, un autre d'arrivée, une série de points intermédiaires, et le service calcule l'itinéraire le plus court à pied (utilisant donc les sentiers de randonnées) - ajouter l'overlay avec les sommets, cols, lacs, etc. qui sont les passages habituels du randonneur - par l'interaction directe avec ces objets, l'utilisateur doit pouvoir en sélectionner comme points utiles au calcul de l'itinéraire - traiter la réponse pour afficher l'itinéraire sur la carte - l'utilisateur doit pouvoir recommencer un calcul d'itinéraire avec d'autres points (remise à zéro) - ajouter l'overlay des cabanes de montagne à proximité de l'itinéraire - l'utilsateur doit pouvoir interroger ces cabanes pour visionner le nom et l'altitude ===== Illustration ===== {{ :geoinf14:screenshot_from_exoutdoor.png?800 |}} ===== Matériel et indications ===== * on peut construire la baselayer à partir de la carte prédéfinie Mapbox Outdoor qu'on peut améliorer/personnaliser de diverses manières (par ex. faire ressortir les remontées mécaniques qu'un randonneur aime à éviter) * on dispose d'une couche des sommets/cols/lacs par l'API SQL de CartoDB * adresse public : https://ogo.cartodb.com/tables/summits4326_merge/public * chaque point est d'un certain type codé comme suit : 1=sommet{{http://mimbresarts.org/wp-content/uploads/leaflet-maps-marker-icons/mountains.png}}, 2=col{{http://mimbresarts.org/wp-content/uploads/leaflet-maps-marker-icons/mountain-pass-locator-diagonal-reverse-export.png}}, 3=lac{{http://greenoble.fr/wp-content/uploads/leaflet-maps-marker-icons/lake.png}}, 4=vallée{{http://mapmaker.education.nationalgeographic.com/images/markers/mountain_medium.png}} * on utilise l'API Google Directions qui permet de calculer des itinéraires à pied en utilisant les sentiers de montagne * doc : https://developers.google.com/maps/documentation/directions/ * pour décoder l'entité géographique réponse (propriété //overview_polyline.points//) il faut * importer la Google Geometry Library selon https://developers.google.com/maps/documentation/javascript/libraries * et l'utiliser en s'inspirant du chapitre n°3 de ce blogpost [[http://blog.adrienvh.fr/2014/01/22/openlayers-afficher-un-itineraire-calcule-avec-lapi-google-maps/|Transformation de l’itinéraire Google Maps en ligne classique]] * voir aussi la doc de cette librairie https://developers.google.com/maps/documentation/javascript/geometry et cet outil pour décoder à la main une //polyline// https://developers.google.com/maps/documentation/utilities/polylineutility * on dispose aussi d'une couche des cabanes {{http://www.svagadalensbyar.se/wp-content/uploads/leaflet-maps-marker-icons/hostel_0star.png}} par l'API SQL de CartoDB * adresse public : https://ogo.cartodb.com/tables/cabanes4326_merge/public