Tutorial API Microsoft Virtual Earth (1ère partie)
Après avoir fait un premier tutorial sur l’API Google Maps, je souhaite vous présenter un tutorial sur l’API javascript de Microsoft : Virtual Earth.
En effet cette API a une approche un peu plus simple que Google Maps (à mon avis). Elle offre plus de fonctionnalités que ses concurrentes Google ou Yahoo (Itinéraire, recherche Live Local). Par contre il y a largement moins de site qui utilise cette API. Sur ProgrammableWeb, on remarque que seulement 51 mashups sont référencés contre 620 pour Google Maps. Mais j’y reviendrais dans un autre post…
Pour découvrir toutes les fonctionnalités disponibles de Microsoft Virtual Earth : The Virtual Earth Interactive SDK
Prérequis
Aucun n’enregistrement n’est demandé pour l’utilisation de l’API. Aucune référence au “domaine” de l’utilisateur ne doit être fourni.
Ceci facilite grandement le développement.
Il vous suffit juste d’insérer la balise suivante dans le <HEAD> de toutes les pages qui inséreront les cartes MS Virtual Earth.
<script xsrc="http://dev.virtualearth.net/mapcontrol/v3/MapControl.js" mce_src="http://dev.virtualearth.net/mapcontrol/v3/MapControl.js" > </script>
Afficher une carte grâce à l’API Microsoft Virtual Earth
D’abord il faut insérer dans votre page un <DIV> où sera inséré la carte Virtual Earth. Attribuer à ce <DIV> une taille et un id.
Par exemple :
<div id="carte" style="position:relative;width: 400px; height: 400px"></div>
Tour comme Google Maps, pour afficher une carte il est nécessaire d’instancier (de créer) un objet “carte” grâce à la class VEMap().
En argument, vous devez passer l’id du div (container) où vous souhaitez insérer la carte :
var map = new VEMap("carte");
Ensuite, il faut indiquer à l’objet carte de “charger la carte” grâce à la méthode LoadMap(), en indiquant en paramètre où elle doit se centrer. En argument vous devez indiquer les coordonnées géographiques (latitude x et longitude y ) à travers l’objet VELatLong() et en option le niveau d’échelle et le type de carte.
Ce qui donne :
map.LoadMap(new VELatLong(48.860925, 2.336172), //Centre de lacarte 12, //Niveau Zoom VEMapStyle.Road //Style de la carte );
Et voilà, vous avez tout ce qu’il vous faut pour afficher une carte. En résumé, voici le script complet :
<html>
<head>
<title>Tutorial Renalid : Virtual Earth</title>
<script xsrc="http://dev.virtualearth.net/mapcontrol/v3/MapControl.js" mce_src="http://dev.virtualearth.net/mapcontrol/v3/MapControl.js" >
</script>
<script>
function LoadCarte(){ var map = new VEMap("carte");
map.LoadMap(new VELatLong(48.860925, 2.336172), 12, VEMapStyle.Road);
} </script>
</head>
<body onload="LoadCarte()">
<div id="carte" style="position:relative;width: 400px; height: 400px"></div>
</body>
</html>
NB : Il est toujours préférable pour toutes ces API d’instancier l’objet carte une fois la page chargée (appeler la fonction grâce à la méthode onload du body).
Voici la première partie, d’autres suivront pour expliquer les intéractions possibles avec la carte. N’hésitez pas à laisser des commentaires!
PS : Pour en savoir plus sur Virtual Earth, je vous conseille l’interview par JM Billaut de Arnaud Gstach travaillant pour Microsoft Europe sur justement Virtual Earth.



