de demande d'aide pour finir mon code googlemap +xml
Posté : 21 avr. 2007, 19:18
bonjour,
voilà, je suis en train de travailler sur l'api googlemap pour mettre en ligne une map qui affiche des points qui sont listés dans un fichier XML
voici la structure du fichier XML (j'ai pas le choix, c'est un fichier que je récupère et qui est généré par une autre application)
donc dans ce marqueur j'ai toutes les infos que j'ai besoin,
pour l'instant j'ai réussi à traiter les points, pour un affichage simple (voici mon code)
donc pour l'instant j'affiche tout les point avec une infobulle, mais ils ont tous l'icone par defaut de google
je voudrais récupérer la valeur "type" du XML pour leur donner un icone personnalisé (red,green etc...)
j'ai bien compris que je devais récupérer la donnée pour définir le nom de l'icone à afficher (un truc genre :
mais là j'avoue j'y arrive plus, je n'arrive pas à l'intégré à ma fonction "creerMarker", j'arrive au limite de ma compténce (déjà pour faire ça j'ai pas mal bidouiller des morceau de code sans tout bien comprendre)
, je patauge depuis un moment et
si quelqu'un pouvais m'aider, merci
voilà, je suis en train de travailler sur l'api googlemap pour mettre en ligne une map qui affiche des points qui sont listés dans un fichier XML
voici la structure du fichier XML (j'ai pas le choix, c'est un fichier que je récupère et qui est généré par une autre application)
Code : Tout sélectionner
<markers>
<marker mapid="1" title_map="Opey dePlace" lng="100.88497281074524" lat="12.928119252158105" cat="hébergement" username="admin" text="Opey dePlace" date="" url_location="http://www.siterefdupoint.com/" url_thread="" img_location="http://www.sitetest.com/GoogleImages/DSCN6316.JPG" type="green"/>
</markers> pour l'instant j'ai réussi à traiter les points, pour un affichage simple (voici mon code)
Code : Tout sélectionner
<script type="text/javascript">
//<![CDATA[
function load() {
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(12.934299, 100.884705), 15);
map.setMapType(G_SATELLITE_MAP);
function creerMarker(point, onglet1, onglet2) {
var marker = new GMarker(point);
var infoTabs = [
new GInfoWindowTab("Infos", onglet1),
new GInfoWindowTab("Détails", onglet2)
];
GEvent.addListener(marker, "mouseover", function() {
marker.openInfoWindowTabsHtml(infoTabs);
});
return marker;
}
GDownloadUrl("spotmarkers.xml", function(data, responseCode) {
var xml = GXml.parse(data);
var markers = xml.documentElement.getElementsByTagName("marker");
for (var i = 0; i < markers.length; i++) {
var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
parseFloat(markers[i].getAttribute("lng")));
var marker = creerMarker(point, markers[i].getAttribute("title_map"), markers[i].getAttribute("text"));
map.addOverlay(marker);
}
});
}
}
//]]>
</script>
je voudrais récupérer la valeur "type" du XML pour leur donner un icone personnalisé (red,green etc...)
j'ai bien compris que je devais récupérer la donnée pour définir le nom de l'icone à afficher (un truc genre :
Code : Tout sélectionner
var icon = new GIcon();
icon.image = "http://www.monsite.com/images/mm_20_"+ color +".png";
icon.shadow = "http://www.monsite.com/images/mm_20_shadow.png";
icon.iconSize = new GSize(12, 20);
icon.shadowSize = new GSize(22, 20);
icon.iconAnchor = new GLatLng(20, 2);
icon.infoWindowAnchor = new GLatLng(1, 5);
return icon;, je patauge depuis un moment et
si quelqu'un pouvais m'aider, merci