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 :

[1.0beta4]Possibilité avec KML


Sujet :

IGN API Géoportail

  1. #1
    Membre habitué
    Inscrit en
    Juin 2006
    Messages
    379
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 379
    Points : 194
    Points
    194
    Par défaut [1.0beta4]Possibilité avec KML
    Bonjour,
    J'utilise la cartographie avec chargement de fichiers KML et je rencontre quelques difficultés :

    - J'aimerais que des étiquettes s'affichent soit en permanence à côté de l'élément (à l'instar de GoogleEarth) à l'aide de la propriété Name de l'élément, soit dans une bulle d'aide au survol de l'élément...tout en gardant l'affichage de la bulle d'aide sur le click (de sélection)...Est-ce possible ? Faut-il attendre la version OpenLayers 2.8 ?

    - Dans la bulle d'aide des éléments, j'ai bien des liens hypertextes vers d'autres pages du site (et ces liens marchent bien)...mais ces liens sont affichés à l'identique du texte, donc on ne voit pas qu'il y a des liens. Si j'ajoute des balises pour ajouter par exemple l'affichage en vert et souligné, je perds les liens hypertextes...Auriez-vous un exemple ? (Je ne suis pas un pro du HTML...)

    - Comme j'utilisais la bêta3 jusqu'à maintenant, je maintiens à l'aide d'un flag le code différencier entre bêta 3 et 4...au cas où j'aurais des surprises...et c'est le cas sur le type de bulle d'aide qui marchait bien en bêta 3 que j'ai dû changer en 4...Perso, je préfère le FramedCloud, mais cela plante en bêta4 ? Pourquoi ?

    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
    if (IsBeta4)
                {                   
                    popup = new Geoportal.Popup.Anchored(
                        "chicken",
                        ll,    
                        //taille devra s'adapter au contenu
                        feature.layer.map.getSize(), 
                        // new OpenLayers.Size(200,100),
                        TexteBulleAide,
                        null, 
                        true,  // Croix de fermeture
                        feature.style.bgColor,
                        feature.style.bgColorOpacity, 
                        onPopupClose,
                        feature); // Callback de fermeture
                }    
                else
                {                            
                    popup = new OpenLayers.Popup.FramedCloud("chicken",
                                ll,    
                                feature.layer.map.getSize(),                             
                                TexteBulleAide,
                                null,
                                true,                            
                                onPopupClose); 
                }

  2. #2
    Membre éprouvé Avatar de cmail
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    1 730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Mai 2009
    Messages : 1 730
    Points : 966
    Points
    966
    Par défaut
    Pour mieux comprendre et analyser votre question, il serait astucieux de mettre un lien sur votre page contenant le geoportail...

  3. #3
    Membre habitué
    Inscrit en
    Juin 2006
    Messages
    379
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 379
    Points : 194
    Points
    194
    Par défaut
    Bonjour,
    Le pb est que ce n'est pas une page "toute simple"...c'est un site en ASP.NET (en construction) avec identification, il faut naviguer dessus, choisir des types d'éléments à visualiser...en fait, la carto n'est pas présente partout et nécessite une connaissance du produit pour y aboutir...et l'accès est pour l'instant "confidentiel".

    Néanmoins, je pourrais éventuellement faire et mettre à disposition un fichier HTML tout simple pour afficher la carte ainsi qu'un fichier KML exemple à charger...si cela vous dit.

  4. #4
    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
    La grande différence entre 1.0beta3 et 1.0beta4 est l'existance des 3 niveaux d'API (Cf. discussion à ce sujet dans le forum avec mes réponses).
    La conséquence directe est que OpenLayers.Popup.FramedCloud n'est pas dans l'API standard, mais seulement dans l'étendue. Il faut donc utiliser "-e" lors du chargement de la version en 1.0beta4 :


  5. #5
    Membre habitué
    Inscrit en
    Juin 2006
    Messages
    379
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 379
    Points : 194
    Points
    194
    Par défaut
    Ok pour le point 3...donc partiellement résolu, merci !

    D'autres suggestions pour les deux premières questions ?

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

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 130
    Points : 1 765
    Points
    1 765
    Par défaut Point 2
    Sous Windows/FF3, j'arrive à avoir l'affichage des bulles avec lien en bleu
    cf http://atlasnw.free.fr/web/geoportai...ml?q=cdata.kml
    <code>
    <?xml version="1.0" encoding="UTF-8"?>
    <kml xmlns="http://www.opengis.net/kml/2.2">
    <Document>
    <Placemark>
    <name>exemple CDATA</name>
    <description>
    <![CDATA[
    <h1>exemple CDATA</h1>
    <p><font color="red">Le texte est rouge</font></p>
    <p><a href="http://www.google.fr">google</a></p>
    ]]>
    </description>
    <Point>
    <coordinates>-1.5369440317154,48.13249969482401,0</coordinates>
    </Point>
    </Placemark>
    </Document>
    </kml>

    </code>

  7. #7
    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 Unusual Voir le message
    - J'aimerais que des étiquettes s'affichent soit en permanence à côté de l'élément (à l'instar de GoogleEarth) à l'aide de la propriété Name de l'élément, soit dans une bulle d'aide au survol de l'élément...tout en gardant l'affichage de la bulle d'aide sur le click (de sélection)...Est-ce possible ? Faut-il attendre la version OpenLayers 2.8 ?

    1. en permanence à côté, je ne vois à chaud qu'une méthode : utiliser le callback onFeatureInsert pour créer un OpenLayer.Layer.Text avec le contenu de la propriété Name - il faudra aussi le positionner - c'est plutôt poilu, mais sûrement fun
    2. fromage et dessert, attendre la 2.8 ou "surcharger" (comme le fait l'API) les fonctions pour obtenir le comportement de la 2.8. Dans le code source de l'API, c'est le fichier OverloadedOpenLayers.js (bêta3) qui surcharge OL.27. En bêta 4, c'est selon le niveau de l'API (OverloadedOpenLayersMinimum.js, OverloadedOpenLayersStandard.js, OverloadedOpenLayersExtended.js)

  8. #8
    Membre habitué
    Inscrit en
    Juin 2006
    Messages
    379
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 379
    Points : 194
    Points
    194
    Par défaut
    Lorsque le texte est "tel quel" dans le KML...je ne me souviens pas avoir eu de souci non plus...mais là, je récupère les champs descriptions, name, extendeddata du KML pour faire ma présentation HTML personnalisée.

    Dans les deux fonctions précitées au début de ce fil pour afficher la bulle d'aide, j'obtiens par exemple un texte comme celui-ci dans TexteBulleAide :

    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
    <h1>7811</h1><font size=1<br/>
      Rue       : ADER (Avenue Clément)<br/>
      <b>Support :</b>
      <br/>  Référence : MAT ACG 8M OCT
      <br/>  Type      : MAT 7m‹h‹=8m
      <br/><b>Luminaire :</b><br/>
        Type      : FONCTIONNEL RECENT<br/>
        Marque    : MAZDA<br/>
        Référence : COMETE L<br/>
        Date pose : 01/01/1991<br/>
        <b>Lampe 1</b><br/>
          Type : SODIUM HAUTE PRESSION<br/>
          Puissance : 276<br/>
          Date pose :</font><br/>
        <hr />
        <a href="./Fiche_Foyer.aspx?pIdFoyer=1020581&pTypeAffichage=0">Voir la fiche détaillée</a><br/>
        <a href="./Creer_Demande.aspx?pIdFoyer=1020581">Créer une demande de dépannage</a><br/>
        <br/>
        <a href="http:/www.xxx.net">Copyright XXXX</a>
    et là, les liens sont disponibles et font leur travail, mais ils sont noirs tout comme le texte...

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

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 130
    Points : 1 765
    Points
    1 765
    Par défaut Instpection de l'html
    Sous Windows/FF3, j'utilise Firebug pour déterminer le style associé à un élément.
    Pour le popup "standard", j'ai un début de style en .gpPopup .gpPopupContent.
    Il faudrait réaliser la même opération sur le lien du popup en cause ou fournir une url.

  10. #10
    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
    Sous Firebug, on peut vérifier quel est le style associé à la balise <a>. Il est fort possible ou probable que dans la cascade de style les comportements habituels du a, a:hover, a:visited, etc ... soient modifiés par la CSS de l'API.

    Pour vérifier cela il suffit d'insérer comme dans l'exemple geoportalAlert.html :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <style>
    <!--
    a { ... }
       -->
    </style>

    Par exemple, on mettant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    a { background:red!important }

    le style de tout les liens va être modifier pour avoir un fond rouge ...
    C'est à minima un moyen de savoir s'il se passe quelque chose dans les fiches.

  11. #11
    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 dgrichard Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    a { background-color:red!important }

  12. #12
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Bonjour, pour ma part les liens inclus dans mon KML fonctionnent très bien sous IE7 mais pas dans firefox 3. Une idée peut être ?

    Merci

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

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 130
    Points : 1 765
    Points
    1 765
    Par défaut Fichier ou exemple
    Peux-tu joindre ton fichier ou donner une url sur cet exemple ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [SP-2007] Possibilité avec un workflow séquentiel
    Par mikedavem dans le forum SharePoint
    Réponses: 5
    Dernier message: 08/06/2009, 15h10
  2. [1.0beta4] Exemple avec Extended
    Par mga_geo dans le forum IGN API Géoportail
    Réponses: 3
    Dernier message: 11/05/2009, 23h21
  3. google api map avec kml file
    Par speed034 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 22/12/2008, 08h57
  4. Possibilités avec les View
    Par Flashball dans le forum Requêtes
    Réponses: 1
    Dernier message: 24/04/2008, 18h38
  5. Possibilités avec ide visual + mingw
    Par NiamorH dans le forum Choisir un environnement de développement
    Réponses: 3
    Dernier message: 14/12/2007, 20h26

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