banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Tue 20 March 2012 15:46

cmoipich
Participant occasionnel
Date d'inscription: 15 Mar 2012
Messages: 21

Problème à la création de KML avec Mapinfo pour affichage OpenLayers

Bonjour,
je suis débutant dans le webmapping et en Javascript, et je souhaiterais afficher une carte representant des panneaux de signalisation routière avec openlayers.

J'ai réussi à monter mon fichier html, et j'affiche mon fond de carte qui contient OpenStreetMap et les orthophotos de google maps. Mais j'ai des problèmes pour integrer mon KML avec mes points.
En effet, lorsque j'essaye avec un kml donné en exemple sur openlayers.org (sundials.kml par exemple), celui ci s'affiche. Mais quand j'essaye avec le mien non!

J'ai créé mon kml avec MI 9.5, et j'ai remarqué que dans la structure de ce kml, il n'y a presque qu'une description de mes points. Dans le KML en exemple d'openlayers.org, avant la definition des points, il y a d'autres choses dont une definition des icones à utiliser il me semble.

Je n'ai peut etre pas créé mon KML correctement, pouvez vous me dire quelle est la procédure pour ca SVP?

Pour compliquer la chose, par la suite ma table sera mise à jour par des gens qui ne s'y connaissent pas vraiment, et qui ne peuvent rien installer sur leur ordinateur, ils ont juste QGIS pour mettre la table à jour et créer le KML. Donc j'essaye de faire ca sans GoogleEarth, mais ca ne me simplifie pas la tache!

Merci pour votre aide et vos idées!

Sylvain

Hors ligne

 

#2 Mon 26 March 2012 17:31

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: Problème à la création de KML avec Mapinfo pour affichage OpenLayers

Laissez moi deviner... Vous êtes stagiaire et on vous demande de créer un SIG tip top sur mesure pour pas cher. Me trompé-je?

on peut voir le kml créé avec mapinfo?

Dernière modification par icadedt (Mon 26 March 2012 17:53)

Hors ligne

 

#3 Mon 26 March 2012 19:00

cmoipich
Participant occasionnel
Date d'inscription: 15 Mar 2012
Messages: 21

Re: Problème à la création de KML avec Mapinfo pour affichage OpenLayers

... Non vous ne vous trompez pas!

Voici le code du fichier kml que je n'arrive pas a visualiser avec Openlayers:

Code:

<?xml version="1.0" encoding="utf-8"?><kml xmlns="http://earth.google.com/kml/2.1"><Folder><description><![CDATA[219 Items from Layer Relevés_fusion]]></description><Placemark><name><![CDATA[AB4]]></name><description><![CDATA[<br><br><br>
    <table border="1" padding="0">
    <tr><td>ID_mat</td><td>1</td></tr>
    <tr><td>ref_panneau</td><td>AB4</td></tr>
    <tr><td>taille_panneau</td><td>600</td></tr>
    <tr><td>annee_panneau</td><td>2007</td></tr>
    <tr><td>classe_rev_panneau</td><td>2</td></tr>
    <tr><td>etat_panneau</td><td>B</td></tr>
    <tr><td>comm_panneau</td><td></td></tr>
    <tr><td>forme_mat</td><td>rectangle</td></tr>
    <tr><td>etat_mat</td><td>B</td></tr>
    <tr><td>etat_scell_mat</td><td>Mo</td></tr>
    <tr><td>comm_mat</td><td>mauvais scellement</td></tr>
    <tr><td>nom_rue</td><td>Chemin du Ribas</td></tr>
    <tr><td>num_photo</td><td>1</td></tr>
    <tr><td>url</td><td><img style="witdth:500px" src="http://cmoipich.net84.net/photos_sign/1.JPG"></td></tr>
        ]]></description><visibility>1</visibility><open>0</open><Point><extrude>1</extrude><altitudeMode>relativeToGround</altitudeMode><coordinates>7.003511,43.638142,0</coordinates></Point></Placemark><Placemark><name><![CDATA[C13A]]></name><description><![CDATA[<br><br><br>
    <table border="1" padding="0">
    <tr><td>ID_mat</td><td>2</td></tr>
    <tr><td>ref_panneau</td><td>C13A</td></tr>
    <tr><td>taille_panneau</td><td>500</td></tr>
    <tr><td>annee_panneau</td><td>2002</td></tr>
    <tr><td>classe_rev_panneau</td><td>2</td></tr>
    <tr><td>etat_panneau</td><td>B</td></tr>
    <tr><td>comm_panneau</td><td></td></tr>
    <tr><td>forme_mat</td><td>rectangle</td></tr>
    <tr><td>etat_mat</td><td>B</td></tr>
    <tr><td>etat_scell_mat</td><td>B</td></tr>
    <tr><td>comm_mat</td><td></td></tr>
    <tr><td>nom_rue</td><td>Chemin du Ribas</td></tr>
    <tr><td>num_photo</td><td>2</td></tr>
    <tr><td>url</td><td><img style="witdth:500px" src="http://cmoipich.net84.net/photos_sign/2.JPG"></td></tr>
        ]]></description><visibility>1</visibility><open>0</open><Point><extrude>1</extrude><altitudeMode>relativeToGround</altitudeMode><coordinates>7.003543,43.638214,0</coordinates></Point></Placemark><Placemark><name><![CDATA[B14 (50)]]></name><description><![CDATA[<br><br><br>
    <table border="1" padding="0">
    <tr><td>ID_mat</td><td>2</td></tr>
    <tr><td>ref_panneau</td><td>B14 (50)</td></tr>
    <tr><td>taille_panneau</td><td>450</td></tr>
    <tr><td>annee_panneau</td><td>2006</td></tr>
    <tr><td>classe_rev_panneau</td><td>2</td></tr>
    <tr><td>etat_panneau</td><td>B</td></tr>
    <tr><td>comm_panneau</td><td></td></tr>
    <tr><td>forme_mat</td><td>rectangle</td></tr>
    <tr><td>etat_mat</td><td>B</td></tr>
    <tr><td>etat_scell_mat</td><td>B</td></tr>
    <tr><td>comm_mat</td><td></td></tr>
    <tr><td>nom_rue</td><td>Chemin du Ribas</td></tr>
    <tr><td>num_photo</td><td>2</td></tr>
    <tr><td>url</td><td><img style="witdth:500px" src="http://cmoipich.net84.net/photos_sign/2.JPG"></td></tr>
        ]]></description><visibility>1</visibility><open>0</open><Point><extrude>1</extrude><altitudeMode>relativeToGround</altitudeMode><coordinates>7.003542,43.638205,0</coordinates></Point></Placemark></Folder></kml>

et ce pour 219 éléments.


Et voici le code de la carte OpenLayers:

Code:

<html>
  <head>
    <title>SIG</title>
    <link rel="stylesheet" href="/OpenLayers-2.10/theme/default/style.css" type="text/css" />
    <style type="text/css">
    html, body {
            height: 100%;
        }
            #map{
                width : 100%;
                height : 95%;
                border : 1px solid black;
            }
            .olPopup p { margin:0px; font-size: .9em;}
        .olPopup h2 { font-size:1.2em; }
    </style>
    <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key=AIzaSyDabLe5R2Y5nXTJjqvQrCSa7wssnxRYzx4" type="text/javascript"></script>
    <script src="/OpenLayers-2.10/OpenLayers.js"></script>

    <script type="text/javascript">
        var map, select1; select2
        function init(){
             
            map = new OpenLayers.Map({
                    div: "map",
                    projection: new OpenLayers.Projection("EPSG:900913"),
                    displayProjection: new OpenLayers.Projection("EPSG:4326"),
                    units: "m",
                    maxResolution: 156543.0339,
                    maxExtent: new OpenLayers.Bounds(
                        -20037508, -20037508, 20037508, 20037508.34
                    )
                });
                
            var osm = new OpenLayers.Layer.OSM();            
            var gsat = new OpenLayers.Layer.Google("Google : orthophoto",{type: G_SATELLITE_MAP, 'sphericalMercator': true}); 
            var ghyb = new OpenLayers.Layer.Google( "Google : orthophoto + infos", { type: G_HYBRID_MAP , 'sphericalMercator': true} );
                
            map.addLayers([osm, gsat, ghyb]);
            
            var sign = new OpenLayers.Layer.GML("Panneaux de signalisation verticale", "cartqgis.kml", 
               {projection: map.displayProjection,
                format: OpenLayers.Format.KML, 
                formatOptions: {
                  extractStyles: true, 
                  extractAttributes: true,
                  maxDepth: 2
                }});
                
            map.addLayer(sign);
            var PMR = new OpenLayers.Layer.GML("Places stationnement PMR", "pmr.kml", 
               {projection: map.displayProjection,
                format: OpenLayers.Format.KML, 
                formatOptions: {
                  extractStyles: true, 
                  extractAttributes: true,
                  maxDepth: 2
                }});
                
            map.addLayer(PMR);
            var ecl = new OpenLayers.Layer.GML("Eclairage", "ecl.kml", 
               {projection: map.displayProjection,
                format: OpenLayers.Format.KML, 
                formatOptions: {
                  extractStyles: true, 
                  extractAttributes: true,
                  maxDepth: 2
                }});
            map.addLayer(ecl);
            var bati = new OpenLayers.Layer.GML("Bâtiments communaux", "bati2.kml", 
               {projection: map.displayProjection,
                format: OpenLayers.Format.KML, 
                formatOptions: {
                  extractStyles: true, 
                  extractAttributes: true,
                  maxDepth: 2
                }});            
            map.addLayer(bati);
            var poub = new OpenLayers.Layer.GML("Poubelles", "poub.kml", 
               {projection: map.displayProjection,
                format: OpenLayers.Format.KML, 
                formatOptions: {
                  extractStyles: true, 
                  extractAttributes: true,
                  maxDepth: 2
                }});        
            map.addLayer(poub);
            var banc = new OpenLayers.Layer.GML("Bancs", "banc.kml", 
               {projection: map.displayProjection,
                format: OpenLayers.Format.KML, 
                formatOptions: {
                  extractStyles: true, 
                  extractAttributes: true,
                  maxDepth: 2
                }});            
            map.addLayer(banc);
            var bus = new OpenLayers.Layer.GML("Abribus", "bus.kml", 
               {projection: map.displayProjection,
                format: OpenLayers.Format.KML, 
                formatOptions: {
                  extractStyles: true, 
                  extractAttributes: true,
                  maxDepth: 2
                }});                
            map.addLayer(bus);
            var incen = new OpenLayers.Layer.GML("Bornes incendie", "incen.kml", 
               {projection: map.displayProjection,
                format: OpenLayers.Format.KML, 
                formatOptions: {
                  extractStyles: true, 
                  extractAttributes: true,
                  maxDepth: 2
                }});                        
            map.addLayer(incen);
            var pass = new OpenLayers.Layer.GML("Passages piétons", "pass.kml", 
               {projection: map.displayProjection,
                format: OpenLayers.Format.KML, 
                formatOptions: {
                  extractStyles: true, 
                  extractAttributes: true,
                  maxDepth: 2
                }});                            
                
            map.addLayer(pass);
                
            map.addControl(new OpenLayers.Control.LayerSwitcher());
            map.addControl(new OpenLayers.Control.Navigation());
            map.addControl(    new OpenLayers.Control.PanZoomBar());
            map.addControl(    new OpenLayers.Control.MousePosition());
            map.addControl(    new OpenLayers.Control.Scale());
            map.addControl(    new OpenLayers.Control.ZoomBox());
            map.addControl(    new OpenLayers.Control.OverviewMap());

            map.setCenter(
                    new OpenLayers.LonLat(7.00, 43.64).transform(
                        new OpenLayers.Projection("EPSG:4326"),
                        map.getProjectionObject()
                    ), 
                    15
            );
            select = new OpenLayers.Control.SelectFeature(sign);
            select1 = new OpenLayers.Control.SelectFeature(bati);
            select2 = new OpenLayers.Control.SelectFeature(PMR);
            select3 = new OpenLayers.Control.SelectFeature(bus);
            select4 = new OpenLayers.Control.SelectFeature(incen);
            select5 = new OpenLayers.Control.SelectFeature(ecl);
            select6 = new OpenLayers.Control.SelectFeature(pass);
            select7 = new OpenLayers.Control.SelectFeature(poub);
            select8 = new OpenLayers.Control.SelectFeature(banc);
            
            sign.events.on({
                "featureselected": onFeatureSelect,
                "featureunselected": onFeatureUnselect
            });
            
            bati.events.on({
                "featureselected": onFeatureSelect,
                "featureunselected": onFeatureUnselect
            });
  
            PMR.events.on({
                "featureselected": onFeatureSelect,
                "featureunselected": onFeatureUnselect
            });
            
            bus.events.on({
                "featureselected": onFeatureSelect,
                "featureunselected": onFeatureUnselect
            });
            
            banc.events.on({
                "featureselected": onFeatureSelect,
                "featureunselected": onFeatureUnselect
            });
            
            incen.events.on({
                "featureselected": onFeatureSelect,
                "featureunselected": onFeatureUnselect
            });
            
            ecl.events.on({
                "featureselected": onFeatureSelect,
                "featureunselected": onFeatureUnselect
            });
            
            pass.events.on({
                "featureselected": onFeatureSelect,
                "featureunselected": onFeatureUnselect
            });
            
            poub.events.on({
                "featureselected": onFeatureSelect,
                "featureunselected": onFeatureUnselect
            });
            
            map.addControl(select);
            select.activate();   
            map.addControl(select1);
            select1.activate(); 
            map.addControl(select2);
            select2.activate(); 
            map.addControl(select3);
            select3.activate(); 
            map.addControl(select4);
            select4.activate(); 
            map.addControl(select5);
            select5.activate(); 
            map.addControl(select6);
            select6.activate(); 
            map.addControl(select7);
            select7.activate(); 
            map.addControl(select8);
            select8.activate();

        }  
        function onPopupClose(evt) {
            select.unselectAll();
            select1.unselectAll();
            select2.unselectAll();
            select3.unselectAll();
            select4.unselectAll();
            select5.unselectAll();
            select6.unselectAll();
            select7.unselectAll();
            select8.unselectAll();
        }
        function onFeatureSelect(event) {
            var feature = event.feature;
            var selectedFeature = feature;
            var popup = new OpenLayers.Popup.FramedCloud("test", 
                feature.geometry.getBounds().getCenterLonLat(),
                new OpenLayers.Size(10,10),
                "<h2>"+feature.attributes.name + "</h2>" + feature.attributes.description,
                null, true, onPopupClose
            );
            feature.popup = popup;
            map.addPopup(popup);
        }
        function onFeatureUnselect(event) {
            var feature = event.feature;
            if(feature.popup) {
                map.removePopup(feature.popup);
                feature.popup.destroy();
                delete feature.popup;
            }
        }        
    </script>
  </head>
  <body onload="init()">
    <div id="map"></div>
  </body>

</html>

Le problème c'est que lorsque l'on clique sur un élément de la carte (apres avoir désactivé toutes les autres couches sinon ca ne marche pas!)
Une boite "Undefined" apparait.
Je ne connais pas trop le javascript, mais j'ai l'impression que lorsque l'on clique sur un objet, il cherche à afficher le nom et la description de l'objet en question, et Mapinfo ne crée rien de tel. Ou alors Openlayers n'arrive pas à les trouver.



Au passage, lorsque je crée mon KML avec QGIS, il a cette forme:

Code:

<?xml version="1.0" encoding="utf-8" ?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document><Folder><name>cartqgis</name>
<Schema name="cartqgis" id="cartqgis">
    <SimpleField name="Name" type="string"></SimpleField>
    <SimpleField name="Description" type="string"></SimpleField>
    <SimpleField name="ID_mat" type="float"></SimpleField>
    <SimpleField name="ref_panneau" type="string"></SimpleField>
    <SimpleField name="taille_panneau" type="float"></SimpleField>
    <SimpleField name="annee_panneau" type="float"></SimpleField>
    <SimpleField name="classe_rev_panneau" type="float"></SimpleField>
    <SimpleField name="etat_panneau" type="string"></SimpleField>
    <SimpleField name="comm_panneau" type="string"></SimpleField>
    <SimpleField name="forme_mat" type="string"></SimpleField>
    <SimpleField name="etat_mat" type="string"></SimpleField>
    <SimpleField name="etat_scell_mat" type="string"></SimpleField>
    <SimpleField name="comm_mat" type="string"></SimpleField>
    <SimpleField name="nom_rue" type="string"></SimpleField>
    <SimpleField name="num_photo" type="string"></SimpleField>
    <SimpleField name="url" type="string"></SimpleField>
</Schema>
  <Placemark>
    <ExtendedData><SchemaData schemaUrl="#cartqgis">
        <SimpleData name="ID_mat">1</SimpleData>
        <SimpleData name="ref_panneau">AB4</SimpleData>
        <SimpleData name="taille_panneau">600</SimpleData>
        <SimpleData name="annee_panneau">2007</SimpleData>
        <SimpleData name="classe_rev_panneau">2</SimpleData>
        <SimpleData name="etat_panneau">B</SimpleData>
        <SimpleData name="comm_panneau"></SimpleData>
        <SimpleData name="forme_mat">rectangle</SimpleData>
        <SimpleData name="etat_mat">B</SimpleData>
        <SimpleData name="etat_scell_mat">Mo</SimpleData>
        <SimpleData name="comm_mat">mauvais scellement</SimpleData>
        <SimpleData name="nom_rue">Chemin du Ribas</SimpleData>
        <SimpleData name="num_photo">1</SimpleData>
        <SimpleData name="url">&lt;img style=&quot;witdth:500px&quot; src=&quot;http://cmoipich.net84.net/photos_sign/1.JPG&quot;&gt;</SimpleData>
    </SchemaData></ExtendedData>
      <Point><coordinates>7.003511,43.638142</coordinates></Point>
  </Placemark>
  <Placemark>
    <ExtendedData><SchemaData schemaUrl="#cartqgis">
        <SimpleData name="ID_mat">2</SimpleData>
        <SimpleData name="ref_panneau">C13A</SimpleData>
        <SimpleData name="taille_panneau">500</SimpleData>
        <SimpleData name="annee_panneau">2002</SimpleData>
        <SimpleData name="classe_rev_panneau">2</SimpleData>
        <SimpleData name="etat_panneau">B</SimpleData>
        <SimpleData name="comm_panneau"></SimpleData>
        <SimpleData name="forme_mat">rectangle</SimpleData>
        <SimpleData name="etat_mat">B</SimpleData>
        <SimpleData name="etat_scell_mat">B</SimpleData>
        <SimpleData name="comm_mat"></SimpleData>
        <SimpleData name="nom_rue">Chemin du Ribas</SimpleData>
        <SimpleData name="num_photo">2</SimpleData>
        <SimpleData name="url">&lt;img style=&quot;witdth:500px&quot; src=&quot;http://cmoipich.net84.net/photos_sign/2.JPG&quot;&gt;</SimpleData>
    </SchemaData></ExtendedData>
      <Point><coordinates>7.003543,43.638214</coordinates></Point>
  </Placemark>
  <Placemark>
    <ExtendedData><SchemaData schemaUrl="#cartqgis">
        <SimpleData name="ID_mat">2</SimpleData>
        <SimpleData name="ref_panneau">B14 (50)</SimpleData>
        <SimpleData name="taille_panneau">450</SimpleData>
        <SimpleData name="annee_panneau">2006</SimpleData>
        <SimpleData name="classe_rev_panneau">2</SimpleData>
        <SimpleData name="etat_panneau">B</SimpleData>
        <SimpleData name="comm_panneau"></SimpleData>
        <SimpleData name="forme_mat">rectangle</SimpleData>
        <SimpleData name="etat_mat">B</SimpleData>
        <SimpleData name="etat_scell_mat">B</SimpleData>
        <SimpleData name="comm_mat"></SimpleData>
        <SimpleData name="nom_rue">Chemin du Ribas</SimpleData>
        <SimpleData name="num_photo">2</SimpleData>
        <SimpleData name="url">&lt;img style=&quot;witdth:500px&quot; src=&quot;http://cmoipich.net84.net/photos_sign/2.JPG&quot;&gt;</SimpleData>
    </SchemaData></ExtendedData>
      <Point><coordinates>7.003542,43.638205</coordinates></Point>
  </Placemark>
</Folder></Document></kml>

Cette fois il n'y a meme pas de <name> ou <description>. Donc je ne sais pas si c'est possible de l'afficher avec OpenLayers.

Merci beaucoup de vous interesser à mon cas en tout cas!

Hors ligne

 

#4 Mon 26 March 2012 19:43

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9869
Site web

Re: Problème à la création de KML avec Mapinfo pour affichage OpenLayers

Bonsoir,

il cherche à afficher le nom et la description de l'objet en question, et Mapinfo ne crée rien de tel. Ou alors Openlayers n'arrive pas à les trouver.


S'il cherche quelque chose qui n'existe pas, Personne, même OpenLayers, ne le trouvera pas. Peut être SuperLayers mais il n'existe pas encore wink

Ton premier KML ne te choque pas ? À comparer à ce que tu exportes par QGIS ? Les balises td c'est du HTML pas du KML.

Bref, remplace ""<h2>"+feature.attributes.name + "</h2>" + feature.attributes.description," par "<h2>coucou</h2>". Puis en dessous de " var feature = event.feature;" tu met console.log(feature) et tu ouvres firebug puis recharge ta page.

Essaye de comprendre le code Javacript et ce que je viens de t'indiquer. À quoi cela sert il ? Comment corriger le code JavaScript pour arriver à afficher tes données attributaires de la feature ?

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#5 Tue 27 March 2012 09:52

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: Problème à la création de KML avec Mapinfo pour affichage OpenLayers

ton kml manque peut être d'une mise en forme des points: affecter une icône à tes points:

https://developers.google.com/kml/documentation/kml_tut

quand il n'y a pas d'icones specifiées, dans google earth en tout cas, une icone par défaut est affectée mais avec openlayers peut être qu'il faut obligatoirement affecter une icône pour tes ponctuels, par exemple:


Code:

<Style id="sh_sunny_copy69">
        <IconStyle>
            <scale>1.4</scale>
            <Icon>
                <href>http://maps.google.com/mapfiles/kml/shapes/sunny.png</href>
            </Icon>
            <hotSpot x="0.5" y="0.5" xunits="fraction" yunits="fraction"/>
        </IconStyle>
        <LabelStyle>
            <color>ff00aaff</color>
        </LabelStyle>
    </Style>

Dernière modification par icadedt (Tue 27 March 2012 10:50)

Hors ligne

 

#6 Tue 27 March 2012 22:21

cmoipich
Participant occasionnel
Date d'inscription: 15 Mar 2012
Messages: 21

Re: Problème à la création de KML avec Mapinfo pour affichage OpenLayers

Merci pour vos conseils.
J'ai passé ces deux derniers jours dessus, et je ne sais pas exactement ce que j'ai fait, mais ca marche avec les kml fait à partir de Mapinfo!

Yves, j'ai découvert le javascript il y a 3 semaines, alors je ne comprends pas trop le fonctionnement de firebug, il faut dire que la carte s'est affiché peu de temps après que j'installe l'extension sur Firefox, donc je n'ai pas trop pratiqué.

J'ai bien compris que le code

Code:

"<h2>"+feature.attributes.name + "</h2>" + feature.attributes.description,

permet d'aller chercher le nom et la description de chaque objet, mais comme il n'y a pas de <description> dans les kml que je crée avec QGIS, comment faire? j'ai essayé avec:  feature.attributes.ExtendedData, mais ca n'a pas marché.
A défaut, j'ai téléchargé le freeware shp2kml. Je peux convertir les tables en shp grace au traducteur universel de MI, puis QGIS peut les prendre en charge je peux donc les mettre à jour, et je les exporte en kml grace à ce freeware qui permet en plus de paramétrer le visuel du popup.

Icadedt, je ne pense pas que le problème venait de là, étant donné que ca marche, mais en tout cas, j'ai pu personnaliser mes icones!

Un nouveau problème se pose: parfois j'ai plusieurs panneaux sur un meme poteau, j'ai donc des points qui se superposent. Est il possible dans openlayers d'afficher un "éclatement" des points pour pouvoir choisir celui que je veux à la manière de GoogleEarth?
Sinon, j'ai fait des punaises orientées à droite, gauche, haut et bas. Ce qui fait qu'une fois qu'elles pointent toutes sur le point elles ne devraient pas se puperposer. Actuellement, mes icones sont en png, mais est il possible de leur spécifier un "point d'implantation" sur le bout de la punaise? De manière à ce qu'elles se placent avec la pointe de la punaise sur le point GPS, et non pas le centre de l'icone. Peut etre avec Illustrator ou photoshop.

Bravo pour ce forum en tout cas, une bonne mine d'infos!

Sylvain

Hors ligne

 

#7 Wed 28 March 2012 10:16

icadedt
Participant assidu
Lieu: ici et là
Date d'inscription: 21 Jul 2006
Messages: 478

Re: Problème à la création de KML avec Mapinfo pour affichage OpenLayers

cmoipich a écrit:

parfois j'ai plusieurs panneaux sur un meme poteau, j'ai donc des points qui se superposent. Est il possible dans openlayers d'afficher un "éclatement" des points pour pouvoir choisir celui que je veux à la manière de GoogleEarth?


Pourquoi ne pas utiliser carrément le plugin de google earth?

Hors ligne

 

Pied de page des forums

Powered by FluxBB