Archives du mois : octobre 2006

Tutorial API Google Maps (1ère partie)

L’API Google Maps a révolutionné le Web (du moins en partie). Cette application cartographique en javascript totalement gratuite a permis aux développeurs de créer les “mashups”, des applications hybrides qui combinent plusieurs sources d’informations.

Si vous êtes tenté par le développement d’une application utilisant de la cartographie, voici un tutorial présentant les grandes lignes de l’API Google Maps.

Tout d’abord je ne saurais vous conseiller d’acheter “Beginning Google Maps Applications” (en anglais).

Ce tutorial se fera en plusieurs parties que je posterais au fur et à mesure. De plus je pense que je ferais d’autres tutorials pour les autres API car elles ont chacune leurs avantages et inconvénients.

Prérequis

Pour utiliser l’API Google Maps (ou tout autre API cartographique) vous devez avoir des connaissances en language Javascript et éventuellement développement orienté objet.

L’API Javascript Google Maps est (pour faire simple) un script Javascript qui est appelé grâce à la balise <script>.

L’appel au code javascript doit être fait avec un paramètre “key”.

Cette clé vous est fournie par Google et dépend du nom de domaine où sera appelée l’API Google Maps.

Par exemple pour le nom de domaine renalid.com, la clé est :

ABQIAAAAGrKrVTYvOAArcvEc7RkikRQOhA6XYTkMKiLr-GFNzA5v8MYfFhTIin2y-FSBu_nLsl58KPu9ySKs4A

Pour obtenir cette clé, accéder à cette page (un compte Google est aussi requis). Lisez les différentes remarques quant à l’utilisation de l’API, valider les notices légales et entrer le nom de domaine depuis lequel l’API sera appelée (cela peut bien sûr être localhost ou 127.0.0.1).

Attention si la clé n’est pas bonne vous ne pourrez pas utiliser l’API.

Un fois votre clé obtenue, Google vous fournit un exemple d’intégration de l’appel à l’API Google Maps.
La balise suivante doit se trouver dans le <HEAD> de toutes les pages qui inséreront les cartes Google Maps.

Par exemple :

<script xsrc="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAGrKrVTYvOAArcvEc7RkikRQOhA6XYTkMKiLr-GFNzA5v8MYfFhTIin2y-FSBu_nLsl58KPu9ySKs4A" mce_src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAGrKrVTYvOAArcvEc7RkikRQOhA6XYTkMKiLr-GFNzA5v8MYfFhTIin2y-FSBu_nLsl58KPu9ySKs4A"
type="text/javascript"></script>

Afficher une carte grâce à l’API Google Maps

D’abord il faut insérer dans votre page un <DIV> où sera inséré la carte Google Maps. Attribuer à ce <DIV> une taille et un id.

Par exemple :

<div id="map" style="width: 400px; height: 400px"></div>

Pour afficher une carte il est nécessaire d’instancier (de créer) un objet “carte” grâce à la class Gmap2().

En argument, vous devez passer le div (container) où vous souhaitez insérer la carte :

var map = new GMap2(document.getElementById("map"));

Ensuite, il faut indiquer à l’objet carte où elle doit se centrer en utilisant la méthode setCenter(). En argument vous devez indiquer les coordonnées géographiques (latitude x et longitude y ) à travers l’objet GLatLng() ainsi que le niveau d’échelle ainsi si besoin le type de carte.

map.setCenter(new GLatLng(48.881986, 2.420829), 10);

Et voilà, vous avez tout ce qu’il vous faut pour afficher une carte. En résumé, voici le script complet :

<html>
<head>

<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<title>Google Maps JavaScript API Example</title>
<script xsrc="http://maps.google.com/maps?file=api&v=2&key=abcdefg" mce_src="http://maps.google.com/maps?file=api&v=2&key=abcdefg"
type="text/javascript"></script>
<script type="text/javascript">

function load() {
var map = new GMap2(document.getElementById("map"));
map.setCenter(new GLatLng(48.881986, 2.420829), 13);
}

</script>
</head>
<body onload="load()">
<div id="map" style="width: 400px; height: 400px"></div>

</body>
</html>

Dans cet exemple, la création de la carte se fera lors du chargement complet de la page à travers la fonction load() pour éviter des problèmes de chargement.

Voici la première partie, d’autres vont suivre pour expliquer les intéractions possibles avec la carte. N’hésitez pas à laisser des commentaires! :-)

Nouveaux Mashups : tous à vélo!

MonVelov.com : C’est une application développée à l’aide de l’API Google Maps par Jean Baudoin qui sert à localiser et visualiser en temps réel la disponibilité des “velo’v” à Lyon (service gratuit de mise à disposition de vélo).

L’interface est très simple, très claire où plusieurs modes de recherche sont proposés : par arrondissements, par adresse ou par carte.

VéloUtile : Vélo Utile est une association qui a pour but de promouvoir le cyclisme urbain à Marseille afin qu’il soit un moyen de déplacement à part entière dans la ville.

Le site de l’association a intégré une carte intéractive (à l’aide de l’API Google Maps) intégrant de nombreuses informations à l’usage des cyclistes de Marseille.

Vous pouvez y retrouver les pistes cyclables, les parkings à vélo, les magasins ou encore les “points noirs” dangereux pour nos amis cyclistes. La carte offre de nombreuses informations très complètes nécessaires à chaque cycliste de manière très simple.

Si vous aussi vous avez développé une application utilisant une solution cartographique (API Google Maps, Yahoo Maps, Microsoft Virtual Earth ou Map24) n’hésitez pas à m’en faire part! :-)

Découvrez Geoportail en 3D!

Le fameux Géoportail de l’IGN a fait beaucoup parlé de lui… Appelé souvent le “Google Earth de l’IGN”, nous devons encore attendre début 2007 pour voir l’application Geoportail en version 3D disponible au grand public.

Si vous êtes pressez de découvrir Geoportail 3D (outre la démo présentée à JM Billaut), je vous recommande d’installer World Wind + un merveilleux petit plugin. J’ai découvert cette possibilité sur le forum de Zorgloob et Georezo.net .

World Wind est un logiciel d’exploration de planètes via photographies satellites et aériennes, open source et bien sûr gratuit développé par la NASA (il n’est disponible que pour Windows 2000 et XP).

Un étudiant français, Guilhem Vellut, a créé un plugin pour World Wind permettant d’afficher directement l’ensemble des tuiles de Géoportail (vue aérienne, carte topo etc…) lors vous naviguez.

Voici la manipulation à effectuer :

  • Installez la dernière version de World Wind (version 1.3.5, vérifiez bien la compatibilité de votre ordianateur)
  • Une fois installé, téléchargez le plugin Géoportail
  • Dézippez le fichier à la racine du répertoire où est installé Word Wind
  • Lancez World Wind
  • Dans > Plug-Ins > Load/Unload…
    Sélectionnez Geoportail Plugin et cliquer sur Load
  • L’icone de Géoportail apparait dans le menu permettant de sélectionner les couches que vous souhaitez visualiser

Voici ce que cela donne :

geoportail_1.jpg geoportail_2.jpg geoportail_3.jpg
geoportail_4.jpg geoportail_5.jpg

En tout cas je suis très impressionné pas le rendu. Même si les vues aériennes de Géoportail manque de contraste et de couleurs, la vue 3D met véritablement en avant la précision des données de l’IGN couvrant uniformément la France (dont les cartes topographiques). De plus les données du “relief” de WorldWind donne un rendu vraiment réaliste en vue 3D. C’est étonnant.

Félicitation au créateur de ce plugin! J’attends avec impatience ce fameux Géoportail 3D.

‘Beginning Google Maps Applications’, le livre pour en savoir plus l’API Google Maps

En Août 2006, le livre « Beginning Google Maps Applications with PHP and Ajax » édité par Apress et écrit par Michael Purvis, Jeffrey Sambells et Cameron Turner est sorti. Ce livre est en anglais. Je n’ai pas tardé pour l’acheter. Ce livre permet de découvrir ou redécouvrir l’API Google Maps faisant un panorama assez complet de ses fonctionnalités. Mike Pegg de Google Maps Mania en a écrit la préface.
Le livre est organisé en 11 chapitres, groupés en 3 parties (+ des annexes) représentant 3 niveaux d’apprentissage de l’API Google Maps (de débutant à avancé)

La 1ère partie « Your First Google Maps » met en appétit le lecteur en expliquant comment créer simplement une carte Google Maps à travers l’API Javascript. Ensuite, les auteurs présentent la manière de faire interagir ces cartes avec des données provenant d’un serveur pour créer les célèbres « Mashups ». Un dernier chapitre relate du géocodage d’adresse, nouveauté depuis juin chez Google.

Le livre débute tout d’abord en présentant le format « propriétaire » KML (Keyhole Markup Language) pour ensuite montrer une application « mashups » WayFaring qui permet en un clique de créer sa propre carte à l’aide de l’API Google Maps (personnellement j’aurais plûtot présenté QuikMaps). L’approche est parfois assez simpliste, mais elle a l’avantage d’être très claire pour des novices au monde de la cartographie.

Dans la 2ème partie « Beyond the Basics », on rentre plus dans le détails avec l’utilisation et l’intéraction de données sur les cartes, la manière de les afficher (« map cluster ») et de personnaliser l’interface pour terminer sur les directions possibles de l’API dans le futur.

Enfin la 3ème partie « Advanced Map Features and Methods », met en pratique une utilisation plus poussée de l’API avec par exemple la personnalisation d’icône, le tracé de forme géométrique ou le géocodage plus avancé.

Beaucoup de points positifs à ce livre :

- Une mise en page très bien faite
- Le code est vraiment lisible
- Les exemples sont bien choisis accompagnés de captures d’écran (en noir & blanc)
- Un panorama complet de l’ensemble des fonctionnalités de l’API Google Maps

Ce fut un vrai plaisir de lire ce livre (même en anglais). Même si je connaissais de nombreuses fonctionnalités de l’API, j’ai appris de nombreuses petites choses qui ne sont pas précisées dans la documentation de l’API. Tout au long de la lecture du livre on appréhende de mieux en mieux l’API, ses méthodes, ses « objets » et les événements associés.
Pour conclure, je vous conseille vivement de l’acheter si vous voulez en savoir plus sur l’API Google Maps!

Détails :
- Titre : « Beginning Google Maps Applications with PHP et AJAX » - From Novice to Professional – Build awesone web-based mapping applications with this powerful API!
- Auteurs : Michael Purvis, Jeffrey Sambells et Cameron Turner
- Avant propos : Mike Pegg / Google Maps Mania- Editeur : Apress
- 350 pages environ
- Site Web : http://googlemapsbook.com/ (2 chapitres sont disponibles en PDF)
- Critique : Slashdot

KML (format de fichier Google Earth) un futur standard?

L’article “Annotating the Earth” publié par le magazine du MIT “Technology Review” (MIT) le 26/09 décrit le fait que Google Earth devient l’outil standard pour organiser l’information géographique. Moins d’un an après sa sortie, Google Earth a été téléchargé plus de 100 millions de fois! Il domine l’industrie de la cartographie en ligne.

Google Earth pourrait paraître comme un simple outils présentant des vue aérienne sur un modèle 3D. Mais le fait de pouvoir y insérer n’importe quel type d’informations (données, layers etc…) à travers son format ouvert KML (variation de XML), offre de nombreuses fonctionnalités devenant un véritable SIG (Système d’Information Géographique). Ce format très complet peut devenir un vrai standard!

Je vous conseille la lecture de cet article (en anglais), il décrit bien le bouleversement que Google Earth a apporté au monde de la cartographie en ligne.

Qu’en pensez vous?

[Via Google Earth Blog]