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 :

Idée/suggestion évolution sur API


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 Idée/suggestion évolution sur API
    Pas sûr que cela ait déjà été demandé ou envisagé pour la version future de l'API IGN...mais un peu à l'instar de google earth lors du chargement d'une couche (exemple KML)...pourrait-on avoir un flag de visualisation ou non du nom des éléments (sur la base d'une propriété genre "name") ?

    Je m'explique :
    - J'ai des fichiers KML chargeant parfois quelques dizaines ou centaines d'éléments de même nature, donc représenté identiquement, mais si je souhaite retrouver visuellement un parmi tous pour le sélectionner et agir dessus, je dois actuellement cliquer sur chacun d'eux afin de voir dans le popup le nom...plus tard (ou bientôt, d'ailleurs pour quand la prochaine version ?), on aura la bulle d'aide au survol (j'espère LOL)...mais c'est fastidieux dans le cas d'une centaine de points, voire plus...

    J'ai bien essayé de le faire (actuellement) en chargeant une seconde couche avec juste les libellés des POI de l'autre couche, mais... :
    - C'est fastidieux
    - Couteux en temps (on double la génération de KML, le chargement,...)
    - Couteux en ressources (2 fois plus d'éléments sur la carte)
    - il y a quelques effets indésirables (de souvenir bug d'affichage ou de rafraichissement visuel...lors des changement d'échelle et/ou de gestion de popup sur la couche première)

    L'option serait intéressante un peu comme une case à cocher sur chaque couche (dans les options).

    Qu'en pensez-vous ? ?
    Ou y a-t-il une solution de contournement dans l'état actuel de l'API ?

  2. #2
    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 Label, le retour !
    Citation Envoyé par Unusual Voir le message
    Pas sûr que cela ait déjà été demandé ou envisagé pour la version future de l'API IGN...mais un peu à l'instar de google earth lors du chargement d'une couche (exemple KML)...pourrait-on avoir un flag de visualisation ou non du nom des éléments (sur la base d'une propriété genre "name") ?

    Je m'explique :
    - J'ai des fichiers KML chargeant parfois quelques dizaines ou centaines d'éléments de même nature, donc représenté identiquement, mais si je souhaite retrouver visuellement un parmi tous pour le sélectionner et agir dessus, je dois actuellement cliquer sur chacun d'eux afin de voir dans le popup le nom...plus tard (ou bientôt, d'ailleurs pour quand la prochaine version ?), on aura la bulle d'aide au survol (j'espère LOL)...mais c'est fastidieux dans le cas d'une centaine de points, voire plus...

    J'ai bien essayé de le faire (actuellement) en chargeant une seconde couche avec juste les libellés des POI de l'autre couche, mais... :
    - C'est fastidieux
    - Couteux en temps (on double la génération de KML, le chargement,...)
    - Couteux en ressources (2 fois plus d'éléments sur la carte)
    - il y a quelques effets indésirables (de souvenir bug d'affichage ou de rafraichissement visuel...lors des changement d'échelle et/ou de gestion de popup sur la couche première)

    L'option serait intéressante un peu comme une case à cocher sur chaque couche (dans les options).
    Actuellement, tu utilises le seul mécanisme (simple) possible avec OpenLayers 2.7. Donc, pas de sortie.
    Les boggues liés aux changements d'échelles ont été corrigé en développement.
    Les autres disfonctionnements sont liés à la méthode de gestion des évènements : seule la couche la plus "haute" (grosso modo, la dernière activée) à droit aux évènements clic - apparement, sous IE, toutes les couches y ont droit par contre ...

    En OpenLayers 2.8, c'est réglé : plus besoin de faire une couche supplémentaire. Par contre, l'affichage du libellé n'est pas automatisé : il faut que le développeur fasse un petit effort (Cf. pièce jointe en exemple) car il faut définir le style du label, là où on veut aller le chercher et instancier le style de l'objet. L'avantage est que la méthode est généralisable à tout type de couche vecteur.

    Par contre, les libellés montent systématiquement (pas de bouton pour les voir/masquer). Pour faire, cela il faudrait ajouter/surcharger Geoportal.Control.LayerSwitcher ... c'est pas une mince affaire (toujours dans l'optique automatique).

    Citation Envoyé par Unusual Voir le message
    Qu'en pensez-vous ? ?

    • L'utilité du bouton : c'est pas mal d'efforts par rapport à dessiner systématiquement les labels.
    • L'automatisation des labels : cela dépend trop de l'ergonomie de l'application finale, de la densité d'information, ...


    Citation Envoyé par Unusual Voir le message
    Ou y a-t-il une solution de contournement dans l'état actuel de l'API ?
    Cf. supra : elle est lourde!
    Fichiers attachés Fichiers attachés

  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
    Citation Envoyé par dgrichard Voir le message
    En OpenLayers 2.8, c'est réglé : plus besoin de faire une couche supplémentaire. Par contre, l'affichage du libellé n'est pas automatisé : il faut que le développeur fasse un petit effort (Cf. pièce jointe en exemple) car il faut définir le style du label, là où on veut aller le chercher et instancier le style de l'objet. L'avantage est que la méthode est généralisable à tout type de couche vecteur.

    Par contre, les libellés montent systématiquement (pas de bouton pour les voir/masquer). Pour faire, cela il faudrait ajouter/surcharger Geoportal.Control.LayerSwitcher ... c'est pas une mince affaire (toujours dans l'optique automatique).
    donc il me faut attendre la prochaine version de l'api geoportail pour faire des essais ? (cf geoportalMap_kml.html --> only applied when OpenLayers >= 2.8)
    Le pb est la systématisation...cela peut être intéressant d'avoir toutes les infos d'affichées en même temps pour repérer l'objet qui nous intéresse afin de le sélectionner...par la suite, cela peut être gênant visuellement si la densité est élevée...certes...

    Citation Envoyé par dgrichard Voir le message
    • L'utilité du bouton : c'est pas mal d'efforts par rapport à dessiner systématiquement les labels.
    • L'automatisation des labels : cela dépend trop de l'ergonomie de l'application finale, de la densité d'information, ...
    Ce qui serait le mieux dans l'absolu, c'est de définir une plage de zoom pour déterminer l'affichage automatique de ces labels liés...afin de ne pas avoir de pb liés à la densité d'informations.

    On ne peut pas avoir de style conditionnel (genre qu'on pourrait changer à la volée au changement de zoom ?...Cela permettrait à la fois d'activer ou non l'affichage de ces labels...voire aussi de changer la taille de la police de ces labels en fonction du niveau de zoom (cf densité moindre le rendant possible).

    Citation Envoyé par dgrichard Voir le message
    Cf. supra : elle est lourde!
    En quoi est-elle lourde ? Le fait de charger deux couches est certainement plus lourd, non ?

  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
    Citation Envoyé par Unusual Voir le message
    donc il me faut attendre la prochaine version de l'api geoportail pour faire des essais ? (cf geoportalMap_kml.html --> only applied when OpenLayers >= 2.8)
    L'objectif était de montrer que c'est pas très compliqué d'avoir des labels avec OpenLayers 2.8. Pour le faire fonctionner, il faut effectivement l'API en 1.0beta5 ... Si tu souhaites faire des tests, je peux mettre les API compactées sur le forum.

    Citation Envoyé par Unusual Voir le message
    Le pb est la systématisation...cela peut être intéressant d'avoir toutes les infos d'affichées en même temps pour repérer l'objet qui nous intéresse afin de le sélectionner...par la suite, cela peut être gênant visuellement si la densité est élevée...certes...
    On est bien dans la non-systèmatisation

    Citation Envoyé par Unusual Voir le message
    Ce qui serait le mieux dans l'absolu, c'est de définir une plage de zoom pour déterminer l'affichage automatique de ces labels liés...afin de ne pas avoir de pb liés à la densité d'informations.
    OpenLayers supporte cela via les OpenLayers.Rule (minScaleDenominator et maxScaleDenominator), règles que l'on associe à un style que l'on associe à la couche.
    Pour la densité, on en avait discuté OpenLayers.Strategy est notre ami.

    Citation Envoyé par Unusual Voir le message
    En quoi est-elle lourde ? Le fait de charger deux couches est certainement plus lourd, non ?
    Je voulais écrire : la méthode actuelle avec OpenLayers 2.7 (deux couches) est plus lourde que la méthode avec OpenLayers 2.8 - Désolé pour le raccourci de clavier

  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
    J'accepterais volontiers de tester l'api 1.0beta5

    Cela me permettrait d'avancer mon site côté carto car je suis un peu bloqué par les contingences d'OL 2.7...cela me permettrait de me mettre surement plus vite au point pour la suite...sachant que j'ai des impératifs de résultat pour fin septembre

    Merci d'avance

  6. #6
    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 1.0beta5 en test
    Voilà les fichiers de l'API 1.0beta5 non encore copmlètement testée sur toutes nos plateformes et pas encore terminée en termes d'évolutions :

    1. GeoportalMin.js.gz : API minimum compactée compressée (sans OpenLayers 2.8 donc);
    2. Geoportal.js.gz : API standard compactée compressée (avec OpenLayers 2.8 filtrée);
    3. GeoportalExtended.js.gz : API étendue (avec tout OpenLayers 2.8)
    4. APIGeoportail10b5-css-20090827.zip : les répertoires img/ et theme/ de l'API 1.0beta5;
    5. les modèles des exemples qui seront publiés sur le site API.

    Pour l'utiliser :


    1. Ne pas charger l'API depuis le site API : includeEngine=false;
    2. Include donc les javascripts directement;
    3. Mettre les css au même niveau que les javascripts.

    Cela devrait suffire à minima. Des tests ont été effectués sur :

    • FF2, FF3.0 et FF3.5 (Linux) ;
    • IE6/IE8 (Windows) : seul un test d'inclusion de multi-clefs et multi-cartes échoue aléatoirement (IE8) et un test de positionnement sous IE6 ;
    • Safari4beta (Windows) : certains tests échouent encore sur le calcul des tailles des cartes et d'autres tests plus complexes ;
    • Opera 9.64 (Windows) : premiers tests concluant, mais pas terminés ...


    Bons tests et je prends tout retour
    Fichiers attachés Fichiers attachés

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

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 119
    Points : 1 764
    Points
    1 764
    Par défaut Il fallait un premier
    Je viens d'essayer de mettre en place et c'est pas tout à fait comme en beta4

    la version beta5: http://atlasnw.free.fr/ao35/extensio...son/beta5.html

    et la version beta4: http://atlasnw.free.fr/ao35/extensio...Json/json.html

    La couche cadastre ne s'affiche pas: problème de clé ?

    Quelle sont les nouvelles possibilités,
    - couche OpenStreetMap
    - GeoExt
    - ...

  8. #8
    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 beta4/beta5
    Citation Envoyé par mga_geo Voir le message
    Je viens d'essayer de mettre en place et c'est pas tout à fait comme en beta4

    la version beta5: http://atlasnw.free.fr/ao35/extensio...son/beta5.html

    et la version beta4: http://atlasnw.free.fr/ao35/extensio...Json/json.html

    La couche cadastre ne s'affiche pas: problème de clé ?
    Non, si je me met en beta5 à la même échelle qu'en bêta 4 ET en cliquant sur "Cadastre, j'ai la même chose

    Citation Envoyé par mga_geo Voir le message
    Quelle sont les nouvelles possibilités,
    - couche OpenStreetMap
    - GeoExt
    - ...
    La liste est longue ...
    - OpenStreetMap : oui (voir dans les exemples);
    - GeoExt : non, c'est une surcouche à OpenLayers tout comme l'API, il suffit donc d'utiliser l'API minimum + GeoExt;

    Sinon pour les évolutions jusqu'ici codées :


    1. Utilisation de la propriété panMapIfOutOfView d'OpenLayers.Popup dans Geoportal.Popup.Anchored pour ne pas re-centrer systématiquement les fenêtres. Le comportement par défaut de l'API reste cependant inchangé : recentrage des fenêtres
    2. Changement du curseur en 'pointer' lors du survol des objets issus de KML/GPX;
    3. Seul le territoire courant et le Monde sont chargés par l'API accélérant les temps de chargement des pages Web;
    4. Ajout de Geoportal.Control.ToolBox.createControlAnchor() pour faciliter l'insertion de contrôleurs dans la boîte à outils;
    5. Geoportal.Control.AddVectorLayer : suppression de la case à cocher "à main levée ?" si aucune couche linéaire ou polygonales n'est utilisée, suppression de l'entrée "URL" si aucune couche KML/GPX n'est utilisée;
    6. Écriture des polygones, multi-polygones, multi-lignes et multi-points ajoutée dans Geoportal.Format.GPX à minima;
    7. Extension d'OpenLayers.Format.KML de la version 2.8 dans l'API pour ajouter le support des autres ExtendedData;
    8. Retrait de la prise en charge de la saisie des polygones à trous, non portée en OpenLayers 2.8;
    9. Ajout des projections UTM pour Geoportal.Control.MousePosition (basé sur une contribution de gfilliere);
    10. Modifications des font-size et text-align des contrôleurs de projections et positions de la souris;
    11. Ajout des grades et radians à l'affichage des coordonnées géographiques. Les degrés sexagésimaux ne sont plus l'unité par défaut (degrés décimaux). Les coordonnées peuvent maintenant être modifiés à la main (provoque un recentrage);
    12. Amélioration de la méthode OpenLayers.Layer.calculateInRange() pour prendre en compte l'emprise maximale des couches par rapport à la fenêtre de visualisation courante;
    13. Ajout de Geoportal.Control.AddImageLayer pour insérer des couches WMS ou WMS-C. Mise à niveau de OpenLayers.Format.WMSCapabilities : ticket 2164, trunk d'OpenLayers et VendorSpecificCapabilities pour OSGeO WMS-C;
    14. Ajout d'une méthode Geoportal.Control.Form.buildImageButton();
    15. Ajout du contrôleur Geoportal.Control.Loading et prise en charge de celui-ci dans Geoportal.Control.LayerSwitcher. Mise à jour des tests et exemples utilisant OpenLayers.Control.LoadingPanel. Récriture de OpenLayers.Control.LoadingPanel pour qu'il hérite de Geoportal.Control.Loading.

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

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 119
    Points : 1 764
    Points
    1 764
    Par défaut pre beta5
    A priori entre beta5.html et json.html, je n'ai pas de différences sur la partie "utilisation", j'ai juste modifié json.html pour charger la beta4.
    Je me suis peut-être trompé sur ces modifications mais comme la page se charge j'étais content!

    Au niveau chargement de la couche "cadastre" j'ai des différences.
    Cette couche est de type "gpx".
    Si le fichier gpx est absent, en beta4 on a un popup "Erreur au chargement du fichier GML /gml/35/035-ACIGNE_FK001.simp.gpx" et rien en beta5

    En beta4 la couche est active dès le chargement par addLayer.

  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
    Citation Envoyé par mga_geo Voir le message
    A priori entre beta5.html et json.html, je n'ai pas de différences sur la partie "utilisation", j'ai juste modifié json.html pour charger la beta4.
    Pourrais-tu vérifier car je n'ai pas eu ce comportement dans mes tests ...

    Citation Envoyé par mga_geo Voir le message
    Au niveau chargement de la couche "cadastre" j'ai des différences.
    Cette couche est de type "gpx".
    Si le fichier gpx est absent, en beta4 on a un popup "Erreur au chargement du fichier GML /gml/35/035-ACIGNE_FK001.simp.gpx" et rien en beta5
    Je vais regarder cela ...

    Citation Envoyé par mga_geo Voir le message
    En beta4 la couche est active dès le chargement par addLayer.
    Es-tu sûr car, je n'ai pas modifié ce comportement : les couches ne se chargent que si visibility vaut true lors du addLayer() ?

  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
    Je vais regarder cela ...
    Je confirme qu'en bêta 5 comme en bêta 4, l'absence du fichier provoque bien le message d'erreur en question.

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

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 119
    Points : 1 764
    Points
    1 764
    Par défaut visibility
    Avant sur l'addLayer j 'avais displayInLayerSwitcher: true,
    Je viens d'ajouter visibility:true et l'affichage est immédiat

  13. #13
    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 mga_geo Voir le message
    Avant sur l'addLayer j 'avais displayInLayerSwitcher: true,
    Je viens d'ajouter visibility:true et l'affichage est immédiat
    Etrange : displayInLayerSwitcher vaut true par défault (OpenLayers) ... et n'a rien à voir avec visibility - serait-ce une "feature" de la beta4

    Sinon, sur la page beta5, tu pourrais retirer la patience sur la carte (OpenLayers.Control.loadingPanel) car des patiences sont mises maintenant directement sur les couches dans le gestionnaire : la patience sur la carte embêtait mes collègues qui secouent la carte perpétuellement et cette dernière les en empêchait pendant qu'elle s'affichait

  14. #14
    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
    J'ai commencé à mettre en place l'utilisation de la bêta5, pas de problèmes pour l'instant...J'ai bien réussi à mettre en place les labels affichés tous en même temps (comme je le souhaitais) un grand MERCI !!!

    Par contre, je cherche à modifier la présentation et le positionnement (y a encore du boulot !)...faut que je regarde du côté des styles, je pense...si quelqu'un a déjà fait cela ou a un lien, cela m'intéresse. Pas sur que le positionnement soit conditionné par le style...Je pencherais

    Pour ce qui est de l'affichage conditionnel de tous ces labels que je souhaitais également
    Citation Envoyé par dgrichard Voir le message
    OpenLayers supporte cela via les OpenLayers.Rule (minScaleDenominator et maxScaleDenominator), règles que l'on associe à un style que l'on associe à la couche.
    Je n'ai pas encore cherché à le faire (mais je vais m'y mettre dès ce matin), mais si quelqu'un a, là aussi, un exemple ou un lien, je suis preneur...
    à défaut, je préciserais ici comment le faire (dès que trouvé) si personne ne se manifeste sur le sujet.

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

    Informations forums :
    Inscription : Mai 2009
    Messages : 2 119
    Points : 1 764
    Points
    1 764
    Par défaut Filtrage via les folders
    Plutôt que d'utiliser un filtrage sur le champ name, il me semble préférable de mettre en œuvre les "Folder" comme Google cf http://maps.google.fr/maps?q=http:%2...ml&ie=UTF8&z=9 et filtrer sur les folders

    D'autres ont eu l'idée: http://trac.openlayers.org/ticket/2195

  16. #16
    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
    Il faut lire les commentaires de OpenLayers/Vector/Feature.js (la fin du fichier pour les styles).

    Sinon, commence par !

    Le patch 2195 étant petit, je vais vous l'intégrer dans l'API

  17. #17
    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
    Citation Envoyé par dgrichard Voir le message
    En OpenLayers 2.8, c'est réglé : plus besoin de faire une couche supplémentaire. Par contre, l'affichage du libellé n'est pas automatisé : il faut que le développeur fasse un petit effort (Cf. pièce jointe en exemple) car il faut définir le style du label, là où on veut aller le chercher et instancier le style de l'objet. L'avantage est que la méthode est généralisable à tout type de couche vecteur.

    geoportalmap_kml.html
    J'ai bien regardé et repris la méthode...mais quid des changements possibles de style. Tu as ajouté ceci :

    Citation Envoyé par dgrichard Voir le message
    Il faut lire les commentaires de OpenLayers/Vector/Feature.js (la fin du fichier pour les styles).
    mais je n'ai rien trouvé...idem sur OpenLayers (soit je ne cherche pas au bon endroit, soit la doc est mal faite...soit je suis une quiche )

    En fait, par rapport à l'exemple cité en pièce jointe, je cherche juste à faire apparaître le label comme une bulle d'aide windows (rectangle à fond jaune) et à décaler le label un peu plus haut (actuellement, il y a chevauchement avec les symbole de l'élément).

    J'ai bien vu qu'il y avait une propriété "labelAlign" à la valeur "rb"...mais quelles sont les différentes valeurs possibles ? D'où provient cette propriété ? Est-ce un type énuméré ?

    J'ai aussi essayé (intuitivement) d'ajouter des propriétés telles que : fillOpacity , fillColor ou backgroundColor mais rien ne change pour autant dans l'affichage des labels...

  18. #18
    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
    Dans OpenLayers/Feature/Vector.js (ligne 307 et après) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     * label - {String} The text for an optional label. For browsers that use the canvas renderer, this requires either fillText or mozDrawText to be available.
     * labelAlign - {String} Label alignment. This specifies the insertion point relative to the text. It is a string  composed of two characters. The first character is for the horizontal alignment, the second for the vertical alignment. Valid values for horizontal alignment: "l"=left, "c"=center, "r"=right. Valid values for vertical alignment: "t"=top, "m"=middle, "b"=bottom. Example values: "lt", "cm", "rb". The canvas renderer does not  support vertical alignment, it will always use "b".
     * fontColor - {String} The font color for the label, to be provided like CSS.
     * fontFamily - {String} The font family for the label, to be provided like in CSS.
     * fontSize - {String} The font size for the label, to be provided like in CSS.
     * fontWeight - {String} The font weight for the label, to be provided like in CSS.
    Pour la bulle d'aide, j'ai vraiment pas l'impression que c'est évident à regarder les autres propriétés qui s'applique à l'objet et non au label lui-même

  19. #19
    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
    Citation Envoyé par dgrichard Voir le message
    Dans OpenLayers/Feature/Vector.js (ligne 307 et après) :


    Pour la bulle d'aide, j'ai vraiment pas l'impression que c'est évident à regarder les autres propriétés qui s'applique à l'objet et non au label lui-même
    En fait, tu avais inversé Feature et vector dans le chemin d'accès...et moi, je me suis contenté de rechercher dans le fichier feature.js

    Je vais m'y pencher de ce pas...effectivement, cela a l'air coton...

  20. #20
    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
    C'est de la super dysgraphie

    Toutes mes excuses.

Discussions similaires

  1. Recherche Idee/Suggestion sur Algo
    Par Danyel dans le forum VB.NET
    Réponses: 15
    Dernier message: 26/08/2008, 18h38
  2. Arretez avec vos idées & suggestions svp
    Par Marc Lussac dans le forum Evolutions du club
    Réponses: 2
    Dernier message: 29/07/2004, 13h40

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