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 :

HTML perso pour GPX dans un popup


Sujet :

IGN API Géoportail

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 28
    Points : 22
    Points
    22
    Par défaut HTML perso pour GPX dans un popup
    Bonjour,

    Il y a eu une discussion (résolu) au sujet de 'HTML perso dans un popup'
    J'ai essayé de faire quelque chose de similaire pour des traces GPX, et j'arrive à faire des popups avec des infos sur les waypoints, mais je voudrais avoir aussi des infos sur la trace elle-même, contenu dans les meta-data pour la trace (<name>, <desc>, et éventuellement <url> etc.).

    Voici le code, adapté de celui de kiouz et corrigé par dgrichard:
    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
    function openPopup(f) {
        if (f) {
            var popup = new OpenLayers.Popup("id",
                             f.geometry.getBounds().getCenterLonLat(),
                             new OpenLayers.Size(200,50),
                            '<strong>'+ f.attributes.name + '<br>' + f.attributes.desc + '</strong>',
                             true);
            viewer.getMap().addPopup(popup, true);
        }
    }
    
    function initGeoportalMap() {
    
      if (typeof(geoportalLoadviewer)!='function') {
          OpenLayers.Console.error(OpenLayers.i18n('new.instance.failed'));
          return;
      }
      geoportalLoadviewer("viewerDiv", "normal", 'FXX', null, null, 'http://api.ign.fr/geoportail/api/xmlproxy'+'?url=');
      if (!viewer) {
          OpenLayers.Console.error(OpenLayers.i18n('new.instance.failed'));
          return;
      }
      //kbControl= viewer.getMap().getControlsByClass(OpenLayers.Control.KeyboardDefaults.prototype.CLASS_NAME)[0];
      viewer.addGeoportalLayers(['ORTHOIMAGERY.ORTHOPHOTOS:WMSC','GEOGRAPHICALGRIDSYSTEMS.MAPS:WMSC']);
    
    	//ajout fichier GPX
    	viewer.getMap().addLayer("GPX", "track", "mon-fichier.gpx",
    	{visibility: true, minZoomLevel:0, maxZoomLevel:20},
            {onSelect:openPopup,
            onUnselect:function(f){}
        });
    
    	//position
    	viewer.getMap().setCenterAtLonLat(6.01, 45.66, 10);
    }
    Quand je clique sur un waypoint, j'ai bien un popup avec le nom du waypoint et 'undefined' parce qu'il n'y a pas des description (<desc>). Mais quand je clique sur la trace, j'ai un popup avec
    undefined
    undefined

    Est-ce quelqu'un peut m'aider a corriger mon code.

    Merci d'avance,

    James

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    2 128
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 128
    Points : 1 764
    Points
    1 764
    Par défaut
    Une url publique svp!

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 28
    Points : 22
    Points
    22
    Par défaut
    Citation Envoyé par mga_geo Voir le message
    Une url publique svp!
    La voici ici.

    En fait, j'ai fait du progrès. Il fallait mettre la balise <name> juste après <trk> et avec ce code pour la fonction openPopup:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function openPopup(f) {
        if (f) {
            var popup = new OpenLayers.Popup("id",
                             f.geometry.getBounds().getCenterLonLat(),
                             new OpenLayers.Size(200,50),
                            '<strong>'+ f.attributes.name + '<br>' + f.attributes.ele + '</strong>',
                             true);
            viewer.getMap().addPopup(popup, true);
        }
    }
    On obtient le texte de <name> en cliquant sur la trace, et le nom du waypoint et l'elevation en cliquant sur un waypoint.

    Donc, je pense qu'on peut considere ce problème comme
    [Résolu]

Discussions similaires

  1. HTML perso dans un popup
    Par kiouz dans le forum IGN API Géoportail
    Réponses: 3
    Dernier message: 20/04/2010, 13h45
  2. [VBA-E]problème d'indice pour macro dans perso.xls
    Par fred38 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 01/05/2007, 23h33
  3. [HTML -IE7]affichage de l'url dans un popup
    Par mika0102 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 26/03/2007, 09h17
  4. [HTML] Pb pour inserer une colonne dans un tableau
    Par cchampion2fr dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 11/11/2006, 11h41
  5. Comment creer un ocx pour appel dans page html
    Par minette dans le forum VB 6 et antérieur
    Réponses: 26
    Dernier message: 19/07/2006, 12h21

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