<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
>

<channel>
	<title>TipTopTool</title>
	<link>http://www.tiptoptool.com/</link>
	<description></description>
	<language>fr</language>
	<generator>SPIP - www.spip.net</generator>





	<item>
		<title>Mes Cartes sur votre site web</title>
		<link>http://www.tiptoptool.com/Google-Maps-Mes-Cartes-sur-votre-site-web.html</link>
		<guid isPermaLink="true">http://www.tiptoptool.com/Google-Maps-Mes-Cartes-sur-votre-site-web.html</guid>
		<dc:date>2007-08-15T16:00:47Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Vincent GUIGUI</dc:creator>

<category domain="http://www.tiptoptool.com/-Google-Google-Maps-.html">Google Maps</category>

		<dc:subject>Maps, MyMaps, My Maps, Mes Cartes, KML</dc:subject>
		<dc:subject>Google, Mountain View, Microsoft, Beta</dc:subject>

		<description>Cet article technique vous exliquera comment int&#233;grer facilement sur votre site Web une carte cr&#233;&#233;e avec Google Maps : Mes Cartes.

-
&lt;a href="http://www.tiptoptool.com/-Google-Google-Maps-.html" rel="directory"&gt;Google Maps&lt;/a&gt;

/ 
&lt;a href="http://www.tiptoptool.com/+-Maps-MyMaps-My-Maps-Mes-Cartes-KML-+.html" rel="tag"&gt;Maps, MyMaps, My Maps, Mes Cartes, KML&lt;/a&gt;, 
&lt;a href="http://www.tiptoptool.com/+-Google-+.html" rel="tag"&gt;Google, Mountain View, Microsoft, Beta&lt;/a&gt;

		</description>


 <content:encoded>&lt;div class='rss_texte'&gt;&lt;h3 class=&quot;spip&quot;&gt;Contexte&lt;/h3&gt;
&lt;p class=&quot;spip&quot;&gt;Il y a quelques mois, j'avais commenc&#233; la r&#233;alisation d'un service web permettant aux utilisateurs de cr&#233;er une carte Google Maps et de la personnaliser (ajout de points d'int&#234;ret, d'ic&#244;nes et de chemins). Avant d'avoir eu l'occasion de mettre en ligne mon service et de devenir millionaire, j'ai &#233;t&#233; pris de cours par Google lui-m&#234;me lors de la mise en ligne du service &lt;a href=&quot;http://maps.google.fr/maps/ms?msa=1&quot; class=&quot;spip_out&quot;&gt;Mes Cartes&lt;/a&gt; qui fait exactement la m&#234;me chose.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Dans mon service, je fournissais en plus la possibilit&#233; aux utilisateurs d'int&#233;grer leurs cartes personnalis&#233;es facilement sur leur site web &#224; l'aide d'un simple code javascript.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Comme je trouvais cette fonction tr&#232;s utile mais que la r&#233;alisation de service n'&#233;tait plus n&#233;cessaire (merci Google), j'ai effectu&#233; quelques recherches sur les fonctions fournies par de Google Maps et je me suis rendu &#224; l'&#233;vidence que cette fonction n'&#233;tait pas (pour l'instant)pr&#233;sente.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Voici donc Ma solution (donc non officiellement et non-reconnue par Google) pour int&#233;grer Mes Cartes Google Maps sur les pages d'un site web.&lt;/p&gt; &lt;h3 class=&quot;spip&quot;&gt;Explications pr&#233;liminaires&lt;/h3&gt;
&lt;p class=&quot;spip&quot;&gt;Pour cr&#233;er une carte personnalis&#233;e, il faut tout d'abord s'inscrire &#224; ce service : &lt;a href=&quot;http://maps.google.fr/maps/ms?msa=1&quot; class=&quot;spip_out&quot;&gt;Google Maps Mes Cartes&lt;/a&gt;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Lorsque vous cr&#233;ez une carte personnalis&#233;e sur Google Maps, les informations relatives &#224; celle-ci (points, trac&#233;s...) sont enregistr&#233;es sur les serveurs de Google. Vous pouvez donc acc&#233;der &#224; vos cartes pour les modifier &#224; partir de n'importe quel ordinateur.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Si votre carte est &lt;a href=&quot;http://maps.google.fr/help/maps/userguide/index.html#public&quot; class=&quot;spip_out&quot;&gt;publique&lt;/a&gt;, n'importe quel utilisateur pourra la consulter via les services de recherches Google Maps et Google Earth. Si elle est &lt;a href=&quot;http://maps.google.fr/help/maps/userguide/index.html#public&quot; class=&quot;spip_out&quot;&gt;priv&#233;e&lt;/a&gt; seuls les utilisateurs connaissant l'adresse URL de la carte pourront la consulter.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;L'URL de consultation d'une carte est de la forme :
&lt;code class='spip_code' dir='ltr'&gt; http://maps.google.fr/maps/ms?om=1&amp;msa=0&amp;msid=XX.YY&amp;z=7&lt;/code&gt;&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Le param&#232;tre &lt;strong class=&quot;spip&quot;&gt;msid&lt;/strong&gt; est l'identifiant unique de votre carte (XX correspond &#224; votre compte et YY &#224; la carte en particulier), &lt;strong class=&quot;spip&quot;&gt;z&lt;/strong&gt; correspond au zoom par d&#233;faut de la carte.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Google fournit une fonction tr&#232;s int&#233;ressante qui permet d'exporter la carte au format &lt;a href=&quot;http://earth.google.com/kml/whatiskml.html&quot; class=&quot;spip_out&quot;&gt;KML&lt;/a&gt;. Ce format de fichier (bas&#233; sur le XML) sert &#224; stocker des informations g&#233;ographiques pour les utiliser dans des logiciels de cartographies (Google Earth, Google Maps) ou de navigation (GPS).&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;&lt;span class='spip_document_2 spip_documents spip_documents_center' &gt;
&lt;img src='http://www.tiptoptool.com/local/cache-vignettes/L80xH40/kml-button-37b65.gif' width='80' height='40' alt=&quot;&quot; style='height:40px;width:80px;' class='' /&gt;&lt;/span&gt;&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Google a eu la bonne id&#233;e de faire que le fichier KML d'une carte soit toujours accessible via une URL de la forme (vous pouvez trouver cette URL faisant clic-droit/Copier le raccourci sur le lien KML de votre carte) :&lt;/p&gt;
&lt;pre&gt; http://maps.google.fr/maps/ms?om=1&amp;msa=0&amp;msid=XX.YY&amp;output=kml&lt;/pre&gt;
&lt;p class=&quot;spip&quot;&gt;L'URL est donc identique &#224; celle de la carte avec seulement le param&#232;tre &lt;strong class=&quot;spip&quot;&gt;output&lt;/strong&gt; en plus. Vous pouvez donc utiliser votre carte dans presque n'importe quel logiciel compatible KML.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;L'interface de programmation de Google Maps (&lt;a href=&quot;http://www.google.com/apis/maps/&quot; class=&quot;spip_out&quot;&gt;Google Maps API&lt;/a&gt;) permet aux Webmasters d'ins&#233;rer une carte Google Maps sur les pages de leur site web.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Avec les &#233;volutions successives de Google Maps il est maintenant possible d'ouvrir un fichier KML et de l'afficher &#224; l'aide de l'objet &lt;a href=&quot;http://www.google.com/apis/maps/documentation/#XML_Overlays&quot; class=&quot;spip_out&quot;&gt;GeoXML&lt;/a&gt;.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Pour pouvoir utiliser les fonctions de programmation de Google Maps, il faut &lt;a href=&quot;http://www.google.com/apis/maps/signup.html&quot; class=&quot;spip_out&quot;&gt;s'incrire&lt;/a&gt; et fournir l'URL du site sur lequel les cartes seront affich&#233;es. Google pourra de ce fait analyser, filtrer, faire des statistiques d'affichage et bannir en cas de non respect des Conditions d'utilisation.&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Apr&#232;s inscription, Google fournit un identifiant unique appell&#233; Google Maps API Key. Cet identifiant devra &#234;tre utilis&#233; dans le javascript d'insertion de la carte Google Maps.&lt;/p&gt; &lt;h3 class=&quot;spip&quot;&gt;La solution&lt;/h3&gt;
&lt;p class=&quot;spip&quot;&gt;Lorsque vous int&#233;grez une carte Google Maps dans une page web, vous devez simplement rajouter les deux lignes suivantes afin de charger le fichier KML et l'afficher sur la carte.&lt;/p&gt;
&lt;div style='text-align: left;' class='spip_code' dir='ltr'&gt;&lt;code&gt;&lt;br /&gt; var geoXml = new GGeoXml(&quot;KML_URL&quot;);&lt;br /&gt; map.addOverlay(geoXml);&lt;br /&gt;&lt;/code&gt;&lt;/div&gt;
&lt;p class=&quot;spip&quot;&gt;&lt;strong class=&quot;spip&quot;&gt;Note :&lt;/strong&gt; l'objet GGeoXml prend en param&#232;tre une url compl&#232;te vers un fichier KML. Ce fichier KML peut &#234;tre h&#233;berg&#233; sur n'importe quel site internet (il ne doit donc pas forc&#233;ment &#234;tre venir de Google). Cela vous permet d'utiliser des fichiers KML qui auraient &#233;t&#233; g&#233;n&#233;r&#233;s par d'autres logiciels. Google ne recharge pas le fichier KML &#224; chaque appel et pr&#233;f&#232;re utiliser une version mise en cache. Pour forcer Google &#224; utiliser le fichier modifi&#233;, il faut changer l'url (par exemple en ajoutant un param&#232;tre quelconque &#224; la fin : http://www.site/com/fichier.kml&lt;strong class=&quot;spip&quot;&gt; ?741852963&lt;/strong&gt;)&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Voici le code complet d'une page int&#233;grant une carte Google Maps Mes Cartes :&lt;/p&gt; &lt;form action=&quot;/&quot; method=&quot;get&quot;&gt;&lt;div&gt;&lt;textarea readonly='readonly' cols='40' rows='22' class='spip_cadre' dir='ltr'&gt;&amp;lt;html&amp;gt; &amp;lt;head&amp;gt; &amp;lt;script type=&quot;text/javascript&quot; src=&quot;http://maps.google.com/maps?file=api&amp;v=2.x&amp;key=YOUR_GOOGLEMAPS_API_KEY&quot;&amp;gt;&amp;lt;/script&amp;gt; &amp;lt;script type=&quot;text/javascript&quot;&amp;gt; var map; function onLoad() { if (GBrowserIsCompatible()) { map = new GMap2(document.getElementById(&quot;map&quot;)); map.addControl(new GLargeMapControl()); map.addControl(new GMapTypeControl()); var geoXml = new GGeoXml(&quot;http://maps.google.fr/maps/ms?om=1&amp;msa=0&amp;msid=XX.YY&amp;output=kml&quot;); map.addOverlay(geoXml); map.setCenter(new GLatLng(0, 0), 3); } } &amp;lt;/script&amp;gt; &amp;lt;/head&amp;gt; &amp;lt;body onload=&quot;onLoad()&quot;&amp;gt; &amp;lt;div id=&quot;map&quot; style=&quot;width:500px;height:300px;&quot;&amp;gt;&amp;lt;/div&amp;gt; &amp;lt;/body&amp;gt; &amp;lt;/html&amp;gt;&lt;/textarea&gt;&lt;/div&gt;&lt;/form&gt;
&lt;p class=&quot;spip&quot;&gt;Par exemple : L'URL de la carte de Mes Voyages de vacances est :&lt;br/&gt;
&lt;a href=&quot;http://maps.google.fr/maps/ms?om=1&amp;msa=0&amp;msid=100928156489900663386.00000111c3019d213b42c&quot; class=&quot;spip_out&quot;&gt;http://maps.google.fr/maps/ms ?om=1&amp;msa=0&amp;msid=1009281564...&lt;/a&gt;&lt;/p&gt; &lt;p class=&quot;spip&quot;&gt;Voici le r&#233;sultat de son int&#233;gration dans cette page :&lt;/p&gt;
&lt;center&gt; &lt;SCRIPT src=&quot;http://maps.google.com/maps?file=api&amp;v=2.x&amp;key=ABQIAAAAk-rDSlArLA-6yglt7QxCHRQ9IM7SOAzkoEwrAWV22_JemB_eQhRefZGEwH0iY3tmw_y-vqjr3ph3FA&quot; type=&quot;text/javascript&quot;&gt;&lt;/SCRIPT&gt; &lt;SCRIPT type=&quot;text/javascript&quot;&gt; var map; function GoogleMapsLoadHolidays() { if (GBrowserIsCompatible()) { map = new GMap2(document.getElementById(&quot;mapHolidays&quot;)); map.addControl(new GLargeMapControl()); map.addControl(new GMapTypeControl()); var geoXml = new GGeoXml(&quot;http://maps.google.fr/maps/ms?om=1&amp;msa=0&amp;msid=100928156489900663386.00000111c3019d213b42c&amp;output=kml&quot;); map.addOverlay(geoXml); map.setCenter(new GLatLng(50,-20),2); } } window.onload=GoogleMapsLoadHolidays; &lt;/SCRIPT&gt; &lt;div id=&quot;mapHolidays&quot; style=&quot;width:500px;height:300px;&quot;&gt;&lt;/div&gt; &lt;/center&gt;
&lt;h3 class=&quot;spip&quot;&gt;Remarques&lt;/h3&gt;
&lt;p class=&quot;spip&quot;&gt;Google n'utilise pas exactement l'objet GGeoXml sur son propre site, il se peut donc que des diff&#233;rences notables se fassent sentir entre l'affichage du fichier KML sur votre site et le rendu chez Google Maps. Les principales diff&#233;rences sont :
&lt;br /&gt;&lt;img src=&quot;http://www.tiptoptool.com/local/cache-vignettes/L8xH11/puce-68c92.gif&quot; width='8' height='11' alt=&quot;-&quot; style='height:11px;width:8px;' class='' /&gt; GGeoXml sur votre site doit charger un fichier KML contenant du HTML respectant la norme XHTML dans les descriptions, c'est-&#224;-dire que les balises HTML ouvrantes &lt;...&gt; au sein du CDATA doivent avoir leur pendant fermant (&lt;/...&gt;) ou &#234;tre atomitque (&lt;.../&gt;)
&lt;br /&gt;&lt;img src=&quot;http://www.tiptoptool.com/local/cache-vignettes/L8xH11/puce-68c92.gif&quot; width='8' height='11' alt=&quot;-&quot; style='height:11px;width:8px;' class='' /&gt; GGeoXml n'affiche pas tous les marqueurs si le fichier KML en contient trop ou est trop lourd. De plus le fichier g&#233;n&#233;r&#233; par Google Maps d&#233;clare un style pour chaque marque m&#234;me si ce style est d&#233;j&#224; d&#233;clar&#233; ailleurs, ce qui rend le fichier encore plus gros. Ma recommandation est de r&#233;cup&#233;rer le fichier KML de Google et de le modifier afin d'all&#233;ger la d&#233;claration des styles (c'est un peu fastidieux manuellement mais automatisable). Si le fichier est toujours trop gros, il faut le d&#233;couper en plusieurs fichiers (par exemple : par th&#232;me, r&#233;gion, type de lieu...) et d&#233;clarer en javascript plusieurs GGeoXml (chacun ouvrant un fichier KML diff&#233;rent) et ajouter chaque GGeoXml avec la fonction AddOverlay.
&lt;br /&gt;&lt;img src=&quot;http://www.tiptoptool.com/local/cache-vignettes/L8xH11/puce-68c92.gif&quot; width='8' height='11' alt=&quot;-&quot; style='height:11px;width:8px;' class='' /&gt; Google effectue un peu de formattage automatique lors de l'affichage des info-bulle (InfoWindow) (le titre est en gras, les urls sont converties en liens...), des choses qu'il faut donc faire manuellement sur son propre site.&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>





</channel>

</rss>
