IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IGN API Géoportail Discussion :

Affichage marqueur avec fenetre contenant une photo


Sujet :

IGN API Géoportail

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 19
    Points : 10
    Points
    10
    Par défaut Affichage marqueur avec fenetre contenant une photo
    Bonjour,

    Depuis la nouvelle version, les marqueurs simples que j'avais mis en place ne marchent plus.
    Non seulement je voudrais les avoir mais en plus... je voudrait avoir une nouvelle "race" de marqueurs qui m'afficherai une photo sur clic (+ tant qu'à faire une description).

    Si vous avez un exemple opérationnel sur la dernière version de l'api.. Envoyez le lien que je fasse mon chinois
    Je ne trouve pas d'exemple de marqueurs et encore moins de marqueurs avec photo sur les exemple ign.

    J'ai trouvé un exemple là: http://www.valroc.net/ESSAI/essai002.html mais il utilise un fichier kml et je préfère éviter si possible.

    Merki

    Avant, mes marqueurs "simples" étaient ajoutés de la sorte:

    <script src="http://api.ign.fr/geoportail/api?v=1.0&amp;key=cle&amp;instance=map"></script>
    <script type="text/javascript">
    map= null;

    function changeRenderIntent (o) {
    if (o && o.feature) {
    o.feature.renderIntent= o.feature.renderIntent=="default"?
    "select"
    : "default";
    }
    }

    function initGeoportalMap() {
    // On implémente la carte
    geoportalLoadmap("MapDiv", "normal", "FXX");
    map.getMap().setProxyUrl("/JSPProxyScript.jsp?url=");
    // On charge les couches de données définies dans le contrat
    map.addGeoportalLayers(['ORTHOIMAGERY.ORTHOPHOTOS:WMSC'], { visibility:false });
    map.addGeoportalLayers(['GEOGRAPHICALGRIDSYSTEMS.MAPS:WMSC'], { opacity:1.0 });

    map.getMap().setCenterAtLonLat(-0.717162533943565, 42.8975101519183, 9);
    //ancienne partie
    map.openLayersPanel(false);
    map.openToolsPanel(false);

    //marqueurs

    //couche des marqueurs
    var coucheMarqueurs=new OpenLayers.Layer.Markers("Couche marqueurs");
    map.getMap().addLayer(coucheMarqueurs);

    //icone
    var taille=new OpenLayers.Size(20,34);
    var decalage=new OpenLayers.Pixel(-(taille.w/2), -taille.h);
    var icone=new OpenLayers.Icon("/images/AQUA-blue.png", taille, decalage);

    var position;
    var marqueur;

    position=new OpenLayers.LonLat(-0.717162533943565, 42.8975101519183);
    position.transform(OpenLayers.Projection.CRS84, map.getProjection());
    marqueur=new OpenLayers.Marker(position, icone);
    coucheMarqueurs.addMarker(marqueur);
    }

    </script>
    PS: je suis sous RubyOnRails (+apache+mongrel) et n'est jamais configuré le proxy (??). Cela n'empêchait pas les marqueurs de s'afficher en beta3, mais bon. je le dis pour info.

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    Bon, tout les exemples que je trouve passent par du kml. Je crois que je vais faire de même même si au final ce sera en deux étapes au lieu d'une seule.
    => génération kml
    => chargement kml

    ... Mouai, pas sur kml me permette d'afficher une image non plus..
    Je ne veux pas simplement changer l'icône (elle peut rester identique: no prob) mais afficher une photo dans une popup (de la même manière que le nom apparait)

    Le but est de placer des photos précédemment géo taguée sur la carte

  3. #3
    Expert confirmé
    Homme Profil pro
    Ingénieur cartographe
    Inscrit en
    Avril 2009
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2009
    Messages : 3 173
    Points : 4 224
    Points
    4 224
    Par défaut
    Citation Envoyé par lucmontagne Voir le message
    Depuis la nouvelle version, les marqueurs simples que j'avais mis en place ne marchent plus.
    Info ou intox
    Les marqueurs sont accessibles en 1.0-e (je l'avais pourtant écrit) ...

    Citation Envoyé par lucmontagne Voir le message
    Non seulement je voudrais les avoir mais en plus... je voudrait avoir une nouvelle "race" de marqueurs qui m'afficherai une photo sur clic (+ tant qu'à faire une description).

    Si vous avez un exemple opérationnel sur la dernière version de l'api.. Envoyez le lien que je fasse mon chinois
    Je ne trouve pas d'exemple de marqueurs et encore moins de marqueurs avec photo sur les exemple ign.
    En prime le même exemple que d'hab avec le clic qui ouvre popup ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>marker + clic</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <link rel="shortcut icon" type="image/x-icon" href="img/favicon.ico" />
        <script
            type="text/javascript"
            src="http://api.ign.fr/geoportail/api?v=1.0-e&amp;key=CLEF&amp;instance=viewer&amp;">
        <!--
          -->
        </script>
        <script type="text/javascript">
        <!--
        var viewer= null;
        function initGeoportalMap() {
            OpenLayers.Lang.setCode('fr');
            geoportalLoadviewer("MapDiv", "normal", "FXX");
            viewer.addGeoportalLayers(['ORTHOIMAGERY.ORTHOPHOTOS:WMSC','GEOGRAPHICALGRIDSYSTEMS.MAPS:WMSC']);
            viewer.getMap().setCenterAtLonLat(4.25,45.78, 8);
            var markers= new OpenLayers.Layer.Markers("Repères");
            viewer.getMap().addLayer(markers);
            var size= new OpenLayers.Size(100,100);
            var offset= new OpenLayers.Pixel(-(size.w/2), -(size.h/2));//centered
            var icon = new OpenLayers.Icon('../data/cross.gif',size,offset);
            var ll= new OpenLayers.LonLat(4.25,45.780);
            ll.transform(OpenLayers.Projection.CRS84, viewer.getMap().getProjection());
            var mrkr= new OpenLayers.Marker(ll,icon);
            markers.addMarker(mrkr);
            mrkr.events.register('mousedown', mrkr, function(evt) {
                //alert(this.icon.url);
                if (this.feature==null) {
                    this.feature= new OpenLayers.Feature(markers,this.lonlat.clone(),
                    {
                        popupSize: new OpenLayers.Size(100,100),
                        popupContentHTML: "<div>TEST</div>"
                    });
                    this.feature.createPopup(true);
                    this.feature.popup.setBackgroundColor("white");
                    this.feature.popup.setOpacity(0.7);
                    markers.map.addPopup(this.feature.popup);
                } else {
                    this.feature.popup.toggle();
                }
                OpenLayers.Event.stop(evt);
            });
        }
          -->
        </script>
    </head>
    <body>
        <h1 id="example_title">Une carte</h1>
        <div id="viewerDiv" style="width:500px; height:500px;"></div>
        <div id="example_explain">Positionnement d'un marqueur</div>
    </body>
    </html>
    Images attachées Images attachées  

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    Déslé d'avoir fait mon boulet... Je n'avais pas vu l'histoire de la 1.0-e. J'avais pourtant cherché un minimum quand même.

    En tout cas merci beaucoup pour l'info et l'exemple. C'est reparti

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    j'y suis presque, me reste à trouver la carte.. sûrement un point virgule ou parenthèse en trop ou en moins.

    http://helheim-test.homelinux.org:81/rando/visutrace/3

    ok, j'ai la carte. Il m'a fallut juste remplacer un " par un '.
    Mais toujours pas de photo.

    ok pour la photo, toujours le même probleme: sur plusieurs couches faut deselectionner les autres (faut que je retrouve le post qui explique comment le contourner).

    Reste à virer la transparence de la photo. => fait

    Merci encore pour l'exemple, il fut salutaire.

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 19
    Points : 10
    Points
    10
    Par défaut
    Donc problème résolu. Reste juste le bug firefox pour evenement sur plusieirs couches mais c'est sur un autre post.

Discussions similaires

  1. [AC-2013] Probléme avec formulaire contenant une sous formulaire
    Par Aimen86 dans le forum IHM
    Réponses: 3
    Dernier message: 31/03/2013, 11h32
  2. Update avec variable contenant une quote
    Par NejNej dans le forum Développement
    Réponses: 2
    Dernier message: 13/11/2009, 17h51
  3. Réponses: 3
    Dernier message: 28/08/2009, 11h06
  4. Réponses: 3
    Dernier message: 06/02/2008, 22h35
  5. Probleme avec COUNT() contenant une condition
    Par smarties dans le forum Requêtes
    Réponses: 1
    Dernier message: 26/07/2007, 10h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo