Solutions libres alternatives à Google Maps
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Solutions libres alternatives à Google Maps

on

  • 13,380 views

Déjeuner cartographique

Déjeuner cartographique
Présentation par Mathieu Leplatre @leplatrem
Toulouse, France
07/02/2012

Statistics

Views

Total Views
13,380
Views on SlideShare
11,796
Embed Views
1,584

Actions

Likes
6
Downloads
106
Comments
1

17 Embeds 1,584

http://geotribu.net 934
http://www.scoop.it 201
http://www.makina-corpus.com 147
http://www.geotribu.net 141
http://makina-corpus.com 45
http://geobi.makina-corpus.net 42
http://dev-windows 29
http://www.pearltrees.com 20
http://ks356007.kimsufi.com 6
http://makina.corpus.free.fr 5
http://makinacorpus.com 4
https://twitter.com 4
http://webcache.googleusercontent.com 2
https://si0.twimg.com 1
http://fiddle.jshell.net 1
http://makinacorpus.github.io 1
http://translate.googleusercontent.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • L'utilisation de Google Maps est gratuite mais elle est soumise à de très nombreuses restrictions décrites dans les conditions d'utilisation des services : http://www.google.com/intl/en_fr/help/terms_maps.html http://code.google.com/apis/maps/terms.html http://www.google.com/permissions/geoguidelines.html
  • Certaines restrictions sont levées dans la version Enterprise (> 100 k€, facturée en fonction des conditions de déploiement, d'accès...)
  • Google ne diffuse que des images dont le contenu n'est pas paramétrable. C'est Google qui choisit ce qui doit apparaître ou pas dans les images Les données ne sont pas accessibles : on ne peut pas choisir d'afficher toutes les boîtes aux lettres mais pas les stations services Le rendu n'est pas très finement paramétrable : il est possible d'altérer légèrement les routes, les transports publics, les cours d'eau, quelques points d'intérêts. Il n'est pas possible de choisir la largeur et la présence de chaque type de voies, de régler l'affichage suivant le niveau de zoom, de sélectionner des éléments individuels...
  • Risque de se voir imposer de la publicité tel qu'annoncé en octobre 2011 Google est maître chez lui : * les données contribuées par le public ne peuvent être récupérées * Google s'en réserve un usage illimité Google Maps est à l'opposé du mouvement Open Data. Les données sont propriétaires et inaccessibles individuellement.
  • Rappel des principaux services et composants de Google Maps utilisés par les entreprises et les collectivités
  • Les solutions libres offrent des services équivalents à ceux de Google Maps Solutions Libres : ce sont les logiciels libres et les données libres
  • Les solutions libres présentent de nombreux atouts supplémentaires car elles offrent plus de souplesse. L'imagination et les connaissances techniques sont les seules limites...
  • Google Maps : - tout le monde connaît et utilise - la mamie du Cantal aussi ! - au début du siècle, avant Google Maps (Maporama, Mappy, Localis...) ? On oublie vite, mais il fallait cliquer dans les coins ! Pour indiquer une adresse, il y avait un formulaire, au lieu d'un champ unique ! Pour zoomer, impossible d'utiliser la molette...
  • - la simplicité à base de compromis. - sur la précision : une projection universelle : … en France 15cm (vous allez me dire « Et les Lapons alors ? », … bonne raison pour chercher une alternative à Google Maps) - sur la quantité d'informations : une seule couche - sur la fraîcheur des infos : cache Portails web SIG : pas toujours la puissance de frappe de Google et ses 350k serveurs, mais que les contours des communes mettent 20 secondes à s'afficher, non !
  • - Approche communautaire autour des données - Le free tagging permet de créer autant de types de données que souhaité (bornes à incendie, anneaux d'amarrage,nids de poules...) - Éditeurs lourds, Web, … : JOSM, Merkaartor, Potlatch...
  • - Ces éléments décrivent une architecture minimaliste et masquent la complexité de la tâche : e.g. tuning PostGIS (données > 200 Go ) - Apache et mod_tile sollicitent Mapnik si besoin (cache disque sinon) - le script de mise à jour marque les tuiles « dirty » pour régénération lors d'une future demande
  • Makina Corpus a construit son propre serveur de tuiles. Cela permet : - soulager les serveurs OSM, pas prévus pour utilisation commerciale - gérer des palettes de couleurs adaptées aux chartes graphiques - filtres sur les données dessinées - ex : packs de tuiles d'une zone sur demande - mobile : tuiles à insérer dans un LocalStorage
  • À partir des données d'OpenStreetMap, il est ainsi possible de créer des styles de cartes totalement différents... Le style par défaut du site http://www.openstreetmap.org/ est peu agréable mais présente beaucoup d'informations
  • Les données d'OSM permettent de paramétrer chacun des éléments de la représentation : - style (couleur, largeur, visibilité...) - montrer/masquer les informations (bâtiments officiels, nom des entreprises, parking, points d'intérêt...) - langue - symboles : choix des pictogrammes, de leur taille - ... Cette souplesse permet de construire des cartes interactives s'adaptant aux besoins de l'utilisateur.
  • Makina Corpus crée des styles cartographiques adaptés à différents usage. Le style présenté est destiné à une carte multi-usage.
  • Il est possible de construire son propre style : c'est une opération longue requérant une connaissance approfondie des outils cartographiques et des compétences graphiques. Une solution plus simple est d'utiliser des tuiles existantes préparées par des prestataires comme Makina Corpus ou MapQuest Pour un coût supérieur des prestataires peuvent préparer des tuiles sur mesure (Makina Corpus, GeoFabrik, Developement Seed, CloudMade...)
  • Pour visualiser les tuiles, les pages web doivent comporter une visionneuse. Google Maps a révolutionné l'ergonomie des interactions avec les cartes en ligne.
  • OpenLayers : - utilisé massivement chez Makina Corpus - nos formations OpenLayers ont beaucoup de succès > * cette bibliothèque est largement utilisée * elle est complexe - nos critiques émanent d'expériences concrètes, OL est souvent trop lourd (même après compression) ! Il est bien sûr possible de réduire la taille de la biliothèque. Il existe même des outils automatiques pour cela (eg http://openlayerer.appspot.com/ ) mais attention à la gestion des dépendances ! Le résultat est parfois inutilisable.
  • Modest Maps (modestmaps.js) : - l’extrême inverse ! - ultra-léger (19 ko gzippé) - code minimaliste donc robuste - sans interaction : même pas de bouton pour zoomer ! Juste une API et des évènements ! ne fait rien ! … mais le fait bien !
  • - meilleur compromis - HTML5 Canvas : 2 millions d'objets vectoriels côté client JS : http://www.giscloud.com/blog/gis-cloud-starts-html5-mapping-revolution rendu complet de données brutes : http://kothic.org/js/ Attention à la charge CPU ( ~batterie sur mobiles) - interactions édition basiques mais simples à coder –> modèle objet clair. Ex : éditeur de lignes en une vingtaine de LOC Également présents : tile5 (canvas), polymaps (SVG)
  • Démonstrations réalisées lors de la présentation : Carte vélo Toulouse : http://www.makina-corpus.org/blog/carte-des-v%C3%A9los-avec-leaflet Livetitude : https://github.com/makinacorpus/livetitude Demo chez Heroku : http://vivid-warrior-6693.herokuapp.com/ http://www.makina-corpus.org/blog/des-cartes-collaboratives-avec-livetitude Livetitude permet de positionner des informations sur des cartes de manière collaborative en temps réel, de les exporter au format GeoJSON, de publier la carte sur une page Web... Leaflet offline storage (en développement) : https://github.com/CloudMade/Leaflet/issues/68#issuecomment-2973386
  • La publication de données spatiales sur Internet est devenue extrêmement simple.
  • - Approche OGC : seulement si adaptée ou nécessaire (e.g. directive INSPIRE) C'est une approche qui fonctionne et a fait ses preuves - Problèmes : - difficile à adapter aux besoins métier : météo (altitude), océanographie (sous-marin), géologie (sous-sol) - lourdeur Approche privilégiée par Makina Corpus : utiliser des composants léger adaptés au développement des besoins métier, et visualiser avec des outils du monde du Web (jQuery) * Django, Pyramid voire Drupal ou Plone suivant les besoins
  • Comment fonctionne les UTF-Grid ? http://mapbox.com/mbtiles-spec/utfgrid/
  • Démonstrations réalisées lors de la présentation : Django-mbtiles : https://github.com/makinacorpus/django-mbtiles La gestion de tuiles cartographiques dans Django fera l'objet d'une conférence Makina Corpus lors des prochaines rencontres Django 2012 : http://rencontres.django-fr.org/2012/conferences.html#c4
  • Remplacer Google Maps est possible. On gagne au passage de la flexibilité, de la richesse et de la puissance. Surtout, c'est un choix en phase avec l'ouverture des données et le mouvement OpenData.
  • Plusieurs solutions existent pour le géocodage à partir de données libres. Open MapQuest est la plus aboutie.
  • Il n'y a pas encore d'équivalent libre de Street View. DIY streetview http://www.diy-streetview.com semble actif OpenView http://openviewproject.org/ est en sommeil
  • Les solutions techniques et les données existent. Est-il cependant concevable de se passer de Google Maps en utilisant des logiciels et des données libres ?
  • Les applications et les cartes spécialisées sont plus faciles à réaliser. Comparer ici les données sur les pistes cyclables dans OpenStreetMap et dans Google Maps. (vue de Toulouse, le 06/02/2012)
  • OpenStreetMap permet d'enregistrer des données de toute nature comme l'accessibilité en fauteuil. Il devient possible de produire des cartes et des outils spécialisés.
  • Une bande d'amateurs peut-elle vraiment produire des données plus efficacement que le géant Google  ? En Europe, les données OpenStreetMap sont beaucoup plus riches, variées et souvent de meilleure qualité que celle de Google Maps Une bonne partie des amateurs contribuant à OpenStreetMap sont aussi des professionnels qualifiés (SIG, urbanistes, développeurs informatiques...) Les contributeurs sont nombreux (> 500 000) et motivés Des entités publiques et privées contribuent leur données (cadastre, ville de Brest, ville de Toulouse...)
  • Il est fréquent de trouver des erreurs dans les jeux de données de Google Maps (capture de Toulouse, le 06/02/2012) Loin de nous l'idée de dire qu'OpenStreetMap est parfait. Nous tenons simplement à souligner dans les diapos suivantes qu'il est aisé de trouver des erreurs dans la solution qui domine aujourd'hui le marché. Si vous trouvez des erreurs ou surtout des omissions dans OSM, nous vous encourageons à les corriger vous-même sur http://www.openstreetmap.org/
  • (capture de Toulouse, le 06/02/2012)
  • (capture de Toulouse, le 06/02/2012)
  • Google Maps a fréquemment des problèmes avec les noms propres et les langues L'avantage d'OpenStreetMap est que la collecte des informations est généralement faite par des autochtones...

Solutions libres alternatives à Google Maps Presentation Transcript

  • 1. Les alternatives libres à Google Maps Mathieu Leplatre @leplatrem www.makina-corpus.com
  • 2. Une longue liste dutilisations interdites* mode déconnecté, embarqué* géocodage en masse* applications non ouvertes au public (e.g. intranet, extranet)* applications payantes* afficher de grandes cartes* suivre des flottes, des livraisons......
  • 3. Une longue liste dutilisations interdites...et encore...* mettre les tuiles en cache* fournir des services de navigation* impressions commerciales* utilisation hors API* hors dun navigateur* ...
  • 4. Des utilisations impossibles* maîtriser ce quaffiche lAPI* paramétrer les éléments affichés* définir un style complet* accéder aux données brutes (seulement à des images)
  • 5. De nombreuses limitations* erreurs difficiles voire impossible à corriger* usage payant si fort trafic* esthétique : des cartes trop vues* philosophie : des données propriétaires
  • 6. Principaux services de Google Maps* fonds de carte (tuiles)* visionneuse interactive (API javascript)* publication aisée dans une page web* géocodage* itinéraires* cartes statiques
  • 7. Les solutions libres offrent les mêmes services Open source/Open data Google* fonds de carte (tuiles) ✔ ✔* visionneuse interactive ✔ ✔* publication web simple ✔ ✔* cartes statiques ✔ ~* géocodage ~ ✔* itinéraires ~ ✔
  • 8. Les solutions libres sont plus souples Open source/Open data Google* choix des styles ✔ ~* modification/correction ✔ ~* impression de cartes ✔* cartes en mode déconnecté ✔* applications mobiles ✔* ajout de tout type de données ✔* choix des données visualisées ✔* choix de la langue des tuiles ✔
  • 9. Google Maps a révolutionné les cartes interactivesIl faut réutiliser les meilleurs principes
  • 10. Fonds de carteLapproche Google Maps : des compromis !* une seule projection : Mercator sphérique (900913,WGS 84)* une seule couche !* du cache pour la rapidité→ Rupture avec la plupart des portails Web SIG
  • 11. Les données OpenStreetMap* créé en 2004 (Absence données libres)* édition collaborative (cf. Wikipedia)* free tagging (~NoSQL)* données WGS 84 (GPS)* API REST (moult éditeurs)
  • 12. Serveur de tuiles OpenStreetMap OSM scripts PostGIS dump + diffs Mapnik + feuilles de style Apache + mod_tile nomstyle/z/x/y.png
  • 13. Serveur de tuiles Makina Corpus* autonomie (ex : utilisation commerciale)* styles personnalisés (ex : charte, filtres)* produits dérivés (ex : packs, application voyage)* mobile (ex : offline)* R&D (ex : outils BI)... à lécoute de vos besoins !
  • 14. Style par défaut - OpenStreetMap
  • 15. Style, contenu, langue, symboles...... tout est paramétrable
  • 16. Style allégé – Makina Corpus
  • 17. Style MapQuest
  • 18. VisionneuseLapproche Google Maps :* rapidité (légèreté)* ergonomie (pan, molette)* simplicité ( sans arborescence)* compatibilité (navigateurs, mobiles)… quelles sont les solutions libres équivalentes ?
  • 19. OpenLayers (Metacarta, 2006)+ très populaire - 1 Mo (!)+ support protocoles OGC - lenteur+ gestion des projections - tuiles chargées x8+ compatibilité - HTML généré archaïque - GeoExt  :(
  • 20. Modest Maps JS (Stamen Design, 2011)+ léger ( ~80 ko) - sans support vectoriel+ ultra-rapide et robuste - sans interaction+ support mobile - une seule couche :)
  • 21. Leaflet (Cloudmade, 2011)+ léger (100 ko) - Tuiles ou GeoJSON/WMS+ API simplifiée (à-la GMaps) - édition : élémentaire+ mobile (multitouch+accel. sur iOS)+ HTML5 Canvas (ex : 2M objets)+ projections+ CSS3 & Animations+ compatible IE6 :)
  • 22. Illustrations* Carte VéloToulouse : Leaflet + Mustache + YQL* Livetitude : Leaflet + HTML5 websockets* Gr@ce : Leaflet + HTML5 WebSQL et LocalStorage (offline)
  • 23. Comment publier ses données ?Lapproche Google Maps : culture du Web* Consultation dune carte comme une page web !* Partage dune carte comme une image* Survol des objets en Javascript... en rupture avec la plupart des portails Web SIG
  • 24. Comment publier ses données ?Lapproche privilégiée chez Makina Corpus + MapnikGeoNetwork GeoServer ~ Go Django* ~ Mo GeoExt ~ Mo JQuery ~ Ko OpenLayers ~ Mo Leaflet ~ Ko
  • 25. Le projet MapBox (DevelopmentSeed, 2011)* Orienté communication (statique, OpenData)* TileMill (MSPaint des cartes)* Format MBTiles (SQLite)* Survol des objets en Javascript (UTF-Grid)* Wax (config., légende, tooltips)Une boite à outils flexibles, innovants … et audacieux !
  • 26. Illustrations* Publier un GeoJSON avec QGis et Leaflet* Fabriquer des tuiles avec TileMill* Afficher un fichier MBTiles avec django-mbtiles
  • 27. Conclusion* OpenStreetMap + OpenData* Éco-système libre riche et varié* Choix darchitecture décisifs
  • 28. Pour aller plus loin...
  • 29. GéocodageGeonamesfrom geopy import geocodersgn = geocoders.GeoNames()gn.geocode(Mirail Toulouse)(uLe Mirail, B3, FR, (43.5764114330089, 1.3945770263671875))Nominatim$ curl "http://open.mapquestapi.com/nominatim/v1/search?format=json&q=Mirail%20Toulouse"[{"place_id":"697188","lat":"43.5763978","lon":"1.3916297", ... , ...}]
  • 30. Itinéraires* Open MapQuest http://open.mapquest.com* OpenRouteService http://www.openrouteservice.org* Yours http://www.yournavigation.org* Cloudmade http://maps.cloudmade.comPlus dinformations sur http://wiki.openstreetmap.org/wiki/Routing
  • 31. Street View ?* Do It Yourself streetview, FOSSGIS 2012, Germany http://www.diy-streetview.com
  • 32. Remplacer Google Mapspar des solutions libres ?Est-ce bien raisonnable ?
  • 33. Pistes cyclables OSMPistes cyclables Google
  • 34. ... mais sûrement,la qualité ne peut pas être aussi bonne... ?
  • 35. Dans Google Maps :* la rue Alaric II est devenue une impasse
  • 36. dans Google Maps :* une société privée sest installée dans la mairie* la pharmacie du Capitole nest pas au bon angle de la place
  • 37. dans Google Maps :* la mairie remplace lécole maternelle Lakanal
  • 38. Google Maps :mélange le français et loccitan
  • 39. MerciMathieu Leplatre@leplatrem
  • 40. Les alternatives libres à Google Maps Mathieu Leplatre @leplatrem www.makina-corpus.com
  • 41. Une longue liste dutilisations interdites * mode déconnecté, embarqué * géocodage en masse * applications non ouvertes au public (e.g. intranet, extranet) * applications payantes * afficher de grandes cartes * suivre des flottes, des livraisons... ...Lutilisation de Google Maps est gratuite mais elle est soumise àde très nombreuses restrictions décrites dans les conditionsdutilisation des services :http://www.google.com/intl/en_fr/help/terms_maps.htmlhttp://code.google.com/apis/maps/terms.htmlhttp://www.google.com/permissions/geoguidelines.html
  • 42. Une longue liste dutilisations interdites... et encore... * mettre les tuiles en cache * fournir des services de navigation * impressions commerciales * utilisation hors API * hors dun navigateur * ...Certaines restrictions sont levées dans la version Enterprise(> 100 k€, facturée en fonction des conditions de déploiement,daccès...)
  • 43. Des utilisations impossibles * maîtriser ce quaffiche lAPI * paramétrer les éléments affichés * définir un style complet * accéder aux données brutes (seulement à des images)Google ne diffuse que des images dont le contenu nest pasparamétrable.Cest Google qui choisit ce qui doit apparaître ou pas dans les imagesLes données ne sont pas accessibles : on ne peut pas choisir daffichertoutes les boîtes aux lettres mais pas les stations servicesLe rendu nest pas très finement paramétrable : il est possible daltérerlégèrement les routes, les transports publics, les cours deau, quelquespoints dintérêts.Il nest pas possible de choisir la largeur et la présence de chaque typede voies, de régler laffichage suivant le niveau de zoom, de sélectionnerdes éléments individuels...
  • 44. De nombreuses limitations * erreurs difficiles voire impossible à corriger * usage payant si fort trafic * esthétique : des cartes trop vues * philosophie : des données propriétairesRisque de se voir imposer de la publicité tel quannoncé en octobre2011Google est maître chez lui :* les données contribuées par le public ne peuvent êtrerécupérées* Google sen réserve un usage illimitéGoogle Maps est à lopposé du mouvement Open Data. Lesdonnées sont propriétaires et inaccessibles individuellement.
  • 45. Principaux services de Google Maps * fonds de carte (tuiles) * visionneuse interactive (API javascript) * publication aisée dans une page web * géocodage * itinéraires * cartes statiquesRappel des principaux services et composants de Google Mapsutilisés par les entreprises et les collectivités
  • 46. Les solutions libres offrent les mêmes services Open source/Open data Google * fonds de carte (tuiles) ✔ ✔ * visionneuse interactive ✔ ✔ * publication web simple ✔ ✔ * cartes statiques ✔ ~ * géocodage ~ ✔ * itinéraires ~ ✔Les solutions libres offrent des services équivalents à ceux deGoogle MapsSolutions Libres : ce sont les logiciels libres et les données libres
  • 47. Les solutions libres sont plus souples Open source/Open data Google * choix des styles ✔ ~ * modification/correction ✔ ~ * impression de cartes ✔ * cartes en mode déconnecté ✔ * applications mobiles ✔ * ajout de tout type de données ✔ * choix des données visualisées ✔ * choix de la langue des tuiles ✔Les solutions libres présentent de nombreux atoutssupplémentaires car elles offrent plus de souplesse.Limagination et les connaissances techniques sont les seuleslimites...
  • 48. Google Maps a révolutionné les cartes interactives Il faut réutiliser les meilleurs principesGoogle Maps :- tout le monde connaît et utilise- la mamie du Cantal aussi !- au début du siècle, avant Google Maps (Maporama, Mappy, Localis...) ?On oublie vite, mais il fallait cliquer dans les coins !Pour indiquer une adresse, il y avait un formulaire, au lieu dun champunique !Pour zoomer, impossible dutiliser la molette...
  • 49. Fonds de carte Lapproche Google Maps : des compromis ! * une seule projection : Mercator sphérique (900913,WGS 84) * une seule couche ! * du cache pour la rapidité → Rupture avec la plupart des portails Web SIG- la simplicité à base de compromis.- sur la précision : une projection universelle : … en France 15cm (vous allez me dire « Et les Lapons alors ? », … bonne raison pourchercher une alternative à Google Maps)- sur la quantité dinformations : une seule couche- sur la fraîcheur des infos : cachePortails web SIG : pas toujours la puissance de frappe de Google etses 350k serveurs, mais que les contours des communes mettent20 secondes à safficher, non !
  • 50. Les données OpenStreetMap * créé en 2004 (Absence données libres) * édition collaborative (cf. Wikipedia) * free tagging (~NoSQL) * données WGS 84 (GPS) * API REST (moult éditeurs)- Approche communautaire autour des données- Le free tagging permet de créer autant de types de données quesouhaité (bornes à incendie, anneaux damarrage,nids depoules...)- Éditeurs lourds, Web, … : JOSM, Merkaartor, Potlatch...
  • 51. Serveur de tuiles OpenStreetMap OSM scripts PostGIS dump + diffs Mapnik + feuilles de style Apache + mod_tile nomstyle/z/x/y.png- Ces éléments décrivent une architecture minimaliste etmasquent la complexité de la tâche : e.g. tuning PostGIS (données> 200 Go )- Apache et mod_tile sollicitent Mapnik si besoin (cache disquesinon)- le script de mise à jour marque les tuiles « dirty » pourrégénération lors dune future demande
  • 52. Serveur de tuiles Makina Corpus * autonomie (ex : utilisation commerciale) * styles personnalisés (ex : charte, filtres) * produits dérivés (ex : packs, application voyage) * mobile (ex : offline) * R&D (ex : outils BI) ... à lécoute de vos besoins !Makina Corpus a construit son propre serveur de tuiles.Cela permet :- soulager les serveurs OSM, pas prévus pour utilisationcommerciale- gérer des palettes de couleurs adaptées aux chartes graphiques- filtres sur les données dessinées- ex : packs de tuiles dune zone sur demande- mobile : tuiles à insérer dans un LocalStorage
  • 53. Style par défaut - OpenStreetMapÀ partir des données dOpenStreetMap, il est ainsi possible de créer desstyles de cartes totalement différents...Le style par défaut du site http://www.openstreetmap.org/ est peuagréable mais présente beaucoup dinformations
  • 54. Style, contenu, langue, symboles... ... tout est paramétrableLes données dOSM permettent de paramétrer chacun deséléments de la représentation :- style (couleur, largeur, visibilité...)- montrer/masquer les informations (bâtiments officiels, nomdes entreprises, parking, points dintérêt...)- langue- symboles : choix des pictogrammes, de leur taille- ...Cette souplesse permet de construire des cartes interactivessadaptant aux besoins de lutilisateur.
  • 55. Style allégé – Makina CorpusMakina Corpus crée des styles cartographiques adaptés àdifférents usage.Le style présenté est destiné à une carte multi-usage.
  • 56. Style MapQuestIl est possible de construire son propre style : cest une opération longuerequérant une connaissance approfondie des outils cartographiques et descompétences graphiques.Une solution plus simple est dutiliser des tuiles existantes préparées par desprestataires comme Makina Corpus ou MapQuestPour un coût supérieur des prestataires peuvent préparer des tuiles surmesure (Makina Corpus, GeoFabrik, Developement Seed, CloudMade...)
  • 57. Visionneuse Lapproche Google Maps : * rapidité (légèreté) * ergonomie (pan, molette) * simplicité ( sans arborescence) * compatibilité (navigateurs, mobiles) … quelles sont les solutions libres équivalentes ?Pour visualiser les tuiles, les pages web doivent comporter unevisionneuse.Google Maps a révolutionné lergonomie des interactions avec lescartes en ligne.
  • 58. OpenLayers (Metacarta, 2006) + très populaire - 1 Mo (!) + support protocoles OGC - lenteur + gestion des projections - tuiles chargées x8 + compatibilité - HTML généré archaïque - GeoExt  :(OpenLayers :- utilisé massivement chez Makina Corpus- nos formations OpenLayers ont beaucoup de succès > * cette bibliothèque est largement utilisée * elle est complexe- nos critiques émanent dexpériences concrètes, OL est souventtrop lourd (même après compression) !Il est bien sûr possible de réduire la taille de la biliothèque.Il existe même des outils automatiques pour cela (eghttp://openlayerer.appspot.com/) mais attention à la gestiondes dépendances ! Le résultat est parfois inutilisable.
  • 59. Modest Maps JS (Stamen Design, 2011) + léger ( ~80 ko) - sans support vectoriel + ultra-rapide et robuste - sans interaction + support mobile - une seule couche :)Modest Maps (modestmaps.js) :- l’extrême inverse !- ultra-léger (19 ko gzippé)- code minimaliste donc robuste- sans interaction : même pas de bouton pour zoomer ! Juste uneAPI et des évènements !ne fait rien ! … mais le fait bien !
  • 60. Leaflet (Cloudmade, 2011) + léger (100 ko) - Tuiles ou GeoJSON/WMS + API simplifiée (à-la GMaps) - édition : élémentaire + mobile (multitouch+accel. sur iOS) + HTML5 Canvas (ex : 2M objets) + projections + CSS3 & Animations + compatible IE6 :)- meilleur compromis- HTML5 Canvas :2 millions dobjets vectoriels côté client JS :http://www.giscloud.com/blog/gis-cloud-starts-html5-mapping-revolution rendu complet de données brutes :http://kothic.org/js/Attention à la charge CPU ( ~batterie sur mobiles)- interactions édition basiques mais simples à coder –> modèleobjet clair. Ex : éditeur de lignes en une vingtaine de LOCÉgalement présents : tile5 (canvas), polymaps (SVG)
  • 61. Illustrations * Carte VéloToulouse : Leaflet + Mustache + YQL * Livetitude : Leaflet + HTML5 websockets * Gr@ce : Leaflet + HTML5 WebSQL et LocalStorage (offline)Démonstrations réalisées lors de la présentation :Carte vélo Toulouse :http://www.makina-corpus.org/blog/carte-des-v%C3%A9los-avec-leaflLivetitude :https://github.com/makinacorpus/livetitudeDemo chez Heroku : http://vivid-warrior-6693.herokuapp.com/http://www.makina-corpus.org/blog/des-cartes-collaboratives-avec-liveLivetitude permet de positionner des informations sur des cartesde manière collaborative en temps réel, de les exporter au formatGeoJSON, de publier la carte sur une page Web...Leaflet offline storage (en développement) :https://github.com/CloudMade/Leaflet/issues/68#issuecomment-29733
  • 62. Comment publier ses données ? Lapproche Google Maps : culture du Web * Consultation dune carte comme une page web ! * Partage dune carte comme une image * Survol des objets en Javascript ... en rupture avec la plupart des portails Web SIGLa publication de données spatiales sur Internet est devenueextrêmement simple.
  • 63. Comment publier ses données ? Lapproche privilégiée chez Makina Corpus + Mapnik GeoNetwork GeoServer ~ Go Django* ~ Mo GeoExt ~ Mo JQuery ~ Ko OpenLayers ~ Mo Leaflet ~ Ko- Approche OGC : seulement si adaptée ou nécessaire (e.g.directive INSPIRE)Cest une approche qui fonctionne et a fait ses preuves- Problèmes :- difficile à adapter aux besoins métier : météo (altitude),océanographie (sous-marin), géologie (sous-sol)- lourdeurApproche privilégiée par Makina Corpus : utiliser des composantsléger adaptés au développement des besoins métier, et visualiseravec des outils du monde du Web (jQuery)* Django, Pyramid voire Drupal ou Plone suivant les besoins
  • 64. Le projet MapBox (DevelopmentSeed, 2011) * Orienté communication (statique, OpenData) * TileMill (MSPaint des cartes) * Format MBTiles (SQLite) * Survol des objets en Javascript (UTF-Grid) * Wax (config., légende, tooltips) Une boite à outils flexibles, innovants … et audacieux !Comment fonctionne les UTF-Grid ?http://mapbox.com/mbtiles-spec/utfgrid/
  • 65. Illustrations * Publier un GeoJSON avec QGis et Leaflet * Fabriquer des tuiles avec TileMill * Afficher un fichier MBTiles avec django-mbtilesDémonstrations réalisées lors de la présentation :Django-mbtiles :https://github.com/makinacorpus/django-mbtilesLa gestion de tuiles cartographiques dans Django fera lobjetdune conférence Makina Corpus lors des prochaines rencontresDjango 2012 :http://rencontres.django-fr.org/2012/conferences.html#c4
  • 66. Conclusion * OpenStreetMap + OpenData * Éco-système libre riche et varié * Choix darchitecture décisifsRemplacer Google Maps est possible.On gagne au passage de la flexibilité, de la richesse et de lapuissance.Surtout, cest un choix en phase avec louverture des données etle mouvement OpenData.
  • 67. Pour aller plus loin...
  • 68. Géocodage Geonames from geopy import geocoders gn = geocoders.GeoNames() gn.geocode(Mirail Toulouse) (uLe Mirail, B3, FR, (43.5764114330089, 1.3945770263671875)) Nominatim $ curl "http://open.mapquestapi.com/nominatim/v1/search? format=json&q=Mirail%20Toulouse" [{"place_id":"697188","lat":"43.5763978","lon":"1.3916297", ... , ...}]Plusieurs solutions existent pour le géocodage à partir dedonnées libres.Open MapQuest est la plus aboutie.
  • 69. Itinéraires* Open MapQuest http://open.mapquest.com* OpenRouteService http://www.openrouteservice.org* Yours http://www.yournavigation.org* Cloudmade http://maps.cloudmade.comPlus dinformations sur http://wiki.openstreetmap.org/wiki/Routing
  • 70. Street View ? * Do It Yourself streetview, FOSSGIS 2012, Germany http://www.diy-streetview.comIl ny a pas encore déquivalent libre de Street View.DIY streetview http://www.diy-streetview.com semble actifOpenView http://openviewproject.org/ est en sommeil
  • 71. Remplacer Google Maps par des solutions libres ? Est-ce bien raisonnable ?Les solutions techniques et les données existent.Est-il cependant concevable de se passer de Google Maps enutilisant des logiciels et des données libres ?
  • 72. Pistes cyclables OSM Pistes cyclables GoogleLes applications et les cartes spécialisées sont plus faciles àréaliser.Comparer ici les données sur les pistes cyclables dansOpenStreetMap et dans Google Maps.(vue de Toulouse, le 06/02/2012)
  • 73. OpenStreetMap permet denregistrer des données de toutenature comme laccessibilité en fauteuil.Il devient possible de produire des cartes et des outils spécialisés.
  • 74. ... mais sûrement, la qualité ne peut pas être aussi bonne... ?Une bande damateurs peut-elle vraiment produire des donnéesplus efficacement que le géant Google  ?En Europe, les données OpenStreetMap sont beaucoup plus riches,variées et souvent de meilleure qualité que celle de Google MapsUne bonne partie des amateurs contribuant à OpenStreetMapsont aussi des professionnels qualifiés (SIG, urbanistes,développeurs informatiques...)Les contributeurs sont nombreux (> 500 000) et motivésDes entités publiques et privées contribuent leur données(cadastre, ville de Brest, ville de Toulouse...)
  • 75. Dans Google Maps : * la rue Alaric II est devenue une impasseIl est fréquent de trouver des erreurs dans les jeux de données de Google Maps(capture de Toulouse, le 06/02/2012)Loin de nous lidée de dire quOpenStreetMap est parfait.Nous tenons simplement à souligner dans les diapos suivantes quil est aisé detrouver des erreurs dans la solution qui domine aujourdhui le marché.Si vous trouvez des erreurs ou surtout des omissions dans OSM, nous vousencourageons à les corriger vous-même sur http://www.openstreetmap.org/
  • 76. dans Google Maps : * une société privée sest installée dans la mairie * la pharmacie du Capitole nest pas au bon angle de la place(capture de Toulouse, le 06/02/2012)
  • 77. dans Google Maps : * la mairie remplace lécole maternelle Lakanal(capture de Toulouse, le 06/02/2012)
  • 78. Google Maps : mélange le français et loccitanGoogle Maps a fréquemment des problèmes avec les noms propreset les languesLavantage dOpenStreetMap est que la collecte des informationsest généralement faite par des autochtones...
  • 79. MerciMathieu Leplatre@leplatrem