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 :

Questions autour des adaptations des API JavaScript Geoportail dans le cadre de la Géoplateforme


Sujet :

IGN API Géoportail

  1. #1
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 418
    Points : 805
    Points
    805
    Par défaut Questions autour des adaptations des API JavaScript Geoportail dans le cadre de la Géoplateforme
    Bonjour à tous,

    tout d'abord, je vous invite à consulter le dernier message du salon actualités, services, données qui fait part du calendrier prévisionnel de la publication des versions adaptatives des API JavaScript Geoportail dans le cadre des évolutions sur l'infrastructure liées à la Geoplateforme.

    J'ouvre ce sujet de discussion pour que vous puissiez poser vos éventuelles questions (d'ordre technique si possible) concernant le planning et les adaptations à réaliser sur vos applications. A noter que les adaptations sont en cours de notre côté, et ne sont pas finalisées. Nos réponses dans ce premier temps d'information pourront donc parfois être à caractère provisoire.

    Bonne journée,

    Elias

  2. #2
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2009
    Messages
    868
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2009
    Messages : 868
    Points : 371
    Points
    371
    Par défaut
    Serait-il possible de faire un point sur la doc la plus récente en indiquant les propos et l'URL correspondante ?

  3. #3
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 418
    Points : 805
    Points
    805
    Par défaut Doc technique
    Bonjour,

    Il n'existe pas de documentation technique dédiée à ce sujet pour l'instant. Comme dit dans la communication du salon actualités, services, données, normalement, pour l'utilisateur, tout devrait être transparent. Il y aura peut être des adaptations à réaliser par le développeur à la marge et dans des cas d'utilisations très spécifiques (dans le cas d'une utilisation de certains paramètres "confidentiels" issus de l'autoconfiguration par exemple).

    Sois sur que nous listerons et détaillerons les éventuels points durs identifiés en temps et en heure, quand nos développements seront plus avancés d'ici un ou deux mois normalement.

    Ci-après les liens vers doc technique et exemples pour chacune des API JavaScript Géoportail :
    - access-lib : http://ignf.github.io/geoportal-access-lib/
    - extensions GP : http://ignf.github.io/geoportal-extensions/
    - SDK Géoportail : https://ignf.github.io/geoportal-sdk/

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2009
    Messages
    868
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2009
    Messages : 868
    Points : 371
    Points
    371
    Par défaut
    Bonjour.
    Les évolutions envisagées pour la "Beta 2" de géoréférencement inverse (étendre le rayon de recherches, méta-catégories) sont-elles concernées par projet adaptations API ?
    Si non, qui maitrise le planning car il me tarde de mettre en production la "Beta 2" !

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 154
    Points : 230
    Points
    230
    Par défaut Remarque concenantt le post de Mr COUPPE
    En complément au long post de tmtisfree, et aux remarques de saxrub, que je partage les ayant vécues, à mon humble niveau.
    La documentation pouvant sembler parfois brouillonne, très technique (mon niveau d'abstraction étant limité par mon âge...):
    Les exemples "FIDDLE" correspondants mis à jour seraient les bienvenus, par exemple celui de la page de démo https://ignf.github.io/geoportal-ext...rs-bundle.html, pourquoi pas décliné en ITonwns, OL, Leaflet?
    La transparence pour les utilisateurs du changement de version semblerait un minimum.
    L'adaptation du code IGN à l'actualité du développement Web: ITowns, Leaflet ou OpenLayers, semblerait une priorité pour les utilisateurs intermédiaires/finaux
    Dernier point l'existence de ce forum est une grande chance pour nous, permettant quand même d'avoir des informations importantes d'interlocuteurs passionnés et dévoués, même quand ils avouent qu'ils n'ont pas la possibilité de répondre ou de solutionner les problèmes pour des raisons "technico-administratives".

    PS: Ce serait peut-être un gros plus si un "administratif" lisait ce forum et y intervenait.

    L'outil est remarquable contribuons à son utilisabilité.

  6. #6
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 418
    Points : 805
    Points
    805
    Par défaut
    Citation Envoyé par saxrub Voir le message
    Bonjour.
    Les évolutions envisagées pour la "Beta 2" de géoréférencement inverse (étendre le rayon de recherches, méta-catégories) sont-elles concernées par projet adaptations API ?
    Si non, qui maitrise le planning car il me tarde de mettre en production la "Beta 2" !
    Bonjour,

    pour information les API JavaScript Geoportail utilisent déjà le service de Geocodage v2 (pour le control SearchEngine par exemple).

    Je ne suis pas gestionnaire du projet Geocodage v2, mais il est d'ores et déjà utilisable en production, même si a priori il n'y a pas eu de communication dessus et que la mention "Beta" peut parfois encore trainer ici et là...

    cf : https://geoservices.ign.fr/documenta...e-geocodage-20

    Et pour la doc :
    https://geoservices.ign.fr/documenta...-api-geocodage
    https://geoservices.ign.fr/documenta...autocompletion

    Les évolutions que tu souhaites sur le service de Geocodage ne sont pas concernées par les adaptations de l'API JavaScript Geoportail traitées ici. Je laisse les personnes concernées répondre sur ce sujet que tu as ouvert.

  7. #7
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 418
    Points : 805
    Points
    805
    Par défaut
    Citation Envoyé par NJNDEV Voir le message
    En complément au long post de tmtisfree, et aux remarques de saxrub, que je partage les ayant vécues, à mon humble niveau.
    La documentation pouvant sembler parfois brouillonne, très technique (mon niveau d'abstraction étant limité par mon âge...):
    Les exemples "FIDDLE" correspondants mis à jour seraient les bienvenus, par exemple celui de la page de démo https://ignf.github.io/geoportal-ext...rs-bundle.html, pourquoi pas décliné en ITonwns, OL, Leaflet?
    La transparence pour les utilisateurs du changement de version semblerait un minimum.
    L'adaptation du code IGN à l'actualité du développement Web: ITowns, Leaflet ou OpenLayers, semblerait une priorité pour les utilisateurs intermédiaires/finaux
    Dernier point l'existence de ce forum est une grande chance pour nous, permettant quand même d'avoir des informations importantes d'interlocuteurs passionnés et dévoués, même quand ils avouent qu'ils n'ont pas la possibilité de répondre ou de solutionner les problèmes pour des raisons "technico-administratives".

    PS: Ce serait peut-être un gros plus si un "administratif" lisait ce forum et y intervenait.

    L'outil est remarquable contribuons à son utilisabilité.
    Bonjour,

    comme dit dans le message initial, les adaptations ne sont pas encore réalisées de notre côté et les conséquences précises des évolutions sur les utilisateurs finaux ne sont pas encore exactement connues. Cependant, nous allons tout faire pour que cela soit le plus transparent pour l'utilisateur, c'est à dire qu'il n'y ait qu'à changer le numéro de version de l'API Géoportail utilisée dans l'application. Les exemples jsfiddle seront mis à jour lorsque les versions seront publiées.

    Nous essayons simplement de prévenir suffisamment en amont, à savoir quasiment avec un an d'avance, et avec six mois pour réaliser la montée de version (à partir de juin normalement).

    Pour le reste, je ne peux répondre.

  8. #8
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2009
    Messages
    868
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2009
    Messages : 868
    Points : 371
    Points
    371
    Par défaut
    Bonjour à tous
    Ne serait-il pas bon d'indiquer clairement, dans un simple tableau, les versions minimales de tous les composants nécessaires au passage en souplesse aux nouvelles versions à venir ?
    Allez, je commence le tableau :

    Composant Version minimale Dernière version url de téléchargement
    OpenLayers
    Leaflet
    ...

  9. #9
    Membre habitué Avatar de xavier_dmz
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2016
    Messages
    77
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2016
    Messages : 77
    Points : 156
    Points
    156
    Par défaut
    Citation Envoyé par saxrub Voir le message
    Bonjour à tous
    Ne serait-il pas bon d'indiquer clairement, dans un simple tableau, les versions minimales de tous les composants nécessaires au passage en souplesse aux nouvelles versions à venir ?
    Allez, je commence le tableau :

    Composant Version minimale Dernière version url de téléchargement
    OpenLayers
    Leaflet
    ...
    Bonjour,
    Je pense que la réponse à votre question se trouve dans le message d'Elias juste au dessus du votre.

    Citation Envoyé par elias couppe Voir le message
    comme dit dans le message initial, les adaptations ne sont pas encore réalisées de notre côté et les conséquences précises des évolutions sur les utilisateurs finaux ne sont pas encore exactement connues.
    Malgré le peu de connaissances que j'ai sur le sujet, ça me paraît compromettre le remplissage d'un tel tableau pour le moment.

    Au passage, les versions minimales ne suffisent pas, puisqu'à l'heure actuelle si je me souviens bien des messages récents sur le forum, l'API n'est compatible qu'avec openlayers v6. (ni v7, ni v5-)
    Développeur au sein de l'écosystème "Géoportail" de l'IGN. (Institut national de l'information géographique et forestière.)

  10. #10
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2009
    Messages
    868
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2009
    Messages : 868
    Points : 371
    Points
    371
    Par défaut
    J'ai dû mal m'exprimer !
    Je parles des versions actuelles des composants, qui ne devraient pas évoluer si j'ai bien compris, et qui serviront très probablement de base pour les évolutions à venir.
    Avec un simple coup d'oeil, les utilisateurs sauront si tel ou tel composant qu'ils utilisent est bien la dernière version recommander pour un passage en souplesse aux futures versions.
    Ce serait beaucoup plus rapide que d'ouvrir "la bonne doc", et chaque "Comment commencer" pour chacun des composants qu'on utilise.

  11. #11
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 418
    Points : 805
    Points
    805
    Par défaut
    Pour les dernières versions en date du 15/02/2023 (vont surement évoluer à la marge d'ici la première version adaptative prévue pour mai/juin, mais rien qui ne touche à la version des dépendances principales et aucun breaking changes a priori) :

    Bibliothèque d'accès aux services Géoportail : 3.2.1

    Extensions Géoportail pour Openlayers : 3.2.19 + Openlayers 6.9.0 (non compatible avec Ol 7 comme mentionné par mon collègue ci-dessus)
    Extensions Géoportail pour iTowns : 2.3.10 + iTowns 2.38.2
    Extensions Géoportail pour Leaflet : 2.2.8 + Leaflet 1.7.1

    SDK Géoportail
    : 3.3.22

    Les liens sont présents dans mon message d'annonce sur la room "actualités services données".

    Ces informations sont récupérables sur le package.json de chaque projet, sur les pages releases des github également. Mais effectivement, les voici centralisées ici.

  12. #12
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2009
    Messages
    868
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2009
    Messages : 868
    Points : 371
    Points
    371
    Par défaut Adaptations des API JavaScript Géoportail dans le cadre des évolutions liées à la Géoplateforme
    Bonjour à tous
    Le projet d'adaptation évolue-t-il dans le bon sens ? Un point d'avancement, voire une avant première des nouvelles méthodes, est-il envisageable ?
    Cordialement

  13. #13
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 418
    Points : 805
    Points
    805
    Par défaut C'est pour bientôt
    Bonjour,

    nous finalisons les versions adaptatives des API JavaScript à l'arrêt futur de l'autoconfiguration. Si tout se passe bien, elle seront publiées courant du mois de mai. Il n'y a pas spécifiquement de nouvelles fonctions, et les adaptations utilisateurs à réaliser sont à la marge.

    Une communication indiquant ce qui change avec des exemples accompagnera la publication.

    Les nouvelles versions seront :
    - Bibliothèque d'accès aux services Géoportail : 3.3.0
    - Extensions Géoportail pour OpenLayers : 3.3.0
    - Extensions Géoportail pour Leaflet : 2.3.0
    - Extensions Géoportail pour iTowns : 2.4.0
    - SDK Géoportail : 3.4.0

  14. #14
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 418
    Points : 805
    Points
    805
    Par défaut Migration application vers GP_OL_3.4.0_béta3
    Premières versions adaptatives des API JavaScript Geoportail

    Les versions adaptatives des API JavaScript Géoportail à l'arrêt de l'autoconfiguration ont été publiées. La majorité des adaptations sont transparentes pour les utilisateurs par rapport aux dernières versions publiées. Voici les informations nécessaires pour que la montée de version se passe sans accrocs.

    Numéros des nouvelles versions

    Bibliothèque d'accès aux services Géoportail : 3.3.1
    Extensions Géoportail pour OpenLayers : 3.3.1
    Extensions Géoportail pour Leaflet : 2.3.2
    Extensions Géoportail pour iTowns : 2.4.1
    SDK Géoportail : 3.4.1

    Quels sont les principaux changements ?

    1. Le paramètre apiKey est désormais facultatif pour l’appel aux services de calcul via la bibliothèque d’accès

    L'ensemble des services de calcul appelés via la bibliothèque d'accès sont désormais appelés avec la clé "calcul" par défaut dans la bibliothèque d'accès. Le paramètre "apiKey" n'est donc plus nécessaire pour appeler les services de géocodage, d'itinéraire, d'isochrone, d'altimétrie et d'autocomplétion, que ce soit directement depuis la bibliothèque d'accès ou via les widgets des extensions Géoportail. Il reste en revanche nécessaire pour appeler le nouveau pseudo-service de configuration (Gp.Config).

    Exemple d’utilisation :

    Avant :

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    var options = {
        apiKey : "calcul",
        onSuccess : function (response) {
            print(response.elevations);
        },
        // spécifique au service
        positions : [{
            lon : 1.15,
            lat : 47.48
        }]
    };
    Gp.Services.getAltitude(options);

    Maintenant :

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    var options = {
        onSuccess : function (response) {
            print(response.elevations);
        },
        // spécifique au service
        positions : [{
            lon : 1.15,
            lat : 47.48
        }]
    };
    Gp.Services.getAltitude(options);



    2. Initialisation des API avec des fichiers de configuration en JSON au lieu d'un appel au service d’autoconfiguration

    2.1. Avec une «*clé*» d’accès Géoportail libre et thématique

    Le service d'autoconfiguration n'est plus appelée par les API. Pour la remplacer, nous générons quotidiennement, à partir des getCapabilities des services WMS et WMTS, des fichiers de configuration en JSON appelables par les API JavaScript Géoportail. Il y a un fichier par clé générique. L'avantage de ce nouveau processus (en plus de s'adapter à l’arrêt à venir du service d'autoconfiguration) est que les fichiers de configuration JSON sont directement au format attendu par les API : il n'y a plus besoin de parser une réponse XML pour en extraire les informations utiles puis pour les introduire dans une structure adéquate.
    Par exemple, en renseignant "cartes" au paramètre apiKey, c'est le fichier cartesConfig.json qui sera chargé et directement utilisé par les API.

    Exemple d’utilisation de la bibliothèque d'accès :

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    var options = {
        apiKey : "cartes",
        onSuccess : function (response) {
            print(response);
        },
        onFailure : function (error) {
            print(error.message);
        }
    };
    Gp.Services.getConfig(options);

    Avant :

    --> le fichier d'autoconfiguration de la clé "cartes" au format XML est récupéré depuis https://wxs.ign.fr/autoconf/cartes, parsé, puis utilisé par les API JavaScript Geoportail.

    Maintenant :

    --> le fichier de configuration de la clé "cartes" est récupéré depuis https://raw.githubusercontent.com/IG...tesConfig.json puis directement utilisé par les API JavaScript Geoportail.


    2.2. Avec plusieurs clés d'accès Géoportail

    A noter que le multiKeys est toujours géré, c'est à dire qu'il est possible de renseigner plusieurs clés dans le paramètre apiKey.

    Exemple d’utilisation des Extensions Géoportail pour OpenLayers

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <script src="chemin/vers/GpPluginOpenLayers.js" data-key="ortho,cartes,administratif"></script>

    OU

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Gp.Services.getConfig({
        apiKey: "cartes,ortho,administratif",
        timeOut: 20000,
        onSuccess: createMap
    });


    Avant :

    --> un fichier d'autoconfiguration filtré pour les clés "cartes", "ortho" et "administratif" sont récupérés au format XML, parsés, et utilisés par les API JavaScript Geoportail.

    Maintenant :

    --> les fichiers de configuration "cartesConfig.json", "orthoConfig.json" et "administratifConfig.json" sont récupérés et directement utilisés par les API JavaScript Geoportail.

    2.3. Avec un fichier de configuration personnel

    Il est également possible de générer son propre fichier de configuration à partir d'une ou plusieurs clés, libres ou personnelles. L'utilitaire est temporairement disponible ici : https://geoportal-configuration.onrender.com. Le paramètre permettant ensuite de charger sa configuration personnelle à partir du fichier local généré s'appelle désormais **customConfigFile**, auquel on associera le chemin vers le fichier de configuration json à charger.

    Exemple d’utilisation des Extensions Géoportail pour Leaflet

    Avant :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <script src="chemin/vers/GpPluginLeaflet.js" data-url="chemin/vers/mon/autoconf/AutoConf.js"></script>


    OU

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Gp.Services.getConfig({
        serverUrl : "chemin/vers/mon/autoconf/AutoConf.js",
        timeOut : 20000,
        onSuccess : createMap
    });

    Maintenant :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <script src="chemin/vers/GpPluginLeaflet.js" data-url="chemin/vers/ma/config/customConfig.json"></script>

    OU

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Gp.Services.getConfig({
        customConfigFile: "chemin/vers/ma/config/customConfig.json",
        timeOut: 20000,
        onSuccess: createMap
    });

    Exemple d’utilisation du SDK

    Avant :

    Code javascript : 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
     
    var map = Gp.Map.load("viewerDiv", {
                configUrl : "../resources/autoconf.js",
                viewMode : "3d",
                layersOptions : {
                    "ORTHOIMAGERY.ORTHOPHOTOS" : {
                    },
                    "ELEVATION.ELEVATIONGRIDCOVERAGE" : {
                        type : "elevation"
                    }
                },
                center : {
                    x : 2.357,
                    y : 48.83
                },
                controlsOptions : {
                    layerSwitcher : {
                        maximised : true
                    }
                }
            });


    Maintenant :

    Code javascript : 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
     
    var map = Gp.Map.load("viewerDiv", {
                customConfigFile : "chemin/vers/ma/config/customConfig.json",
                viewMode : "3d",
                layersOptions : {
                    "ORTHOIMAGERY.ORTHOPHOTOS" : {
                    },
                    "ELEVATION.ELEVATIONGRIDCOVERAGE" : {
                        type : "elevation"
                    }
                },
                center : {
                    x : 2.357,
                    y : 48.83
                },
                controlsOptions : {
                    layerSwitcher : {
                        maximised : true
                    }
                }
            });

    Concrètement, quels changements pour vous ?

    - Si vous renseigniez une ou plusieurs clés au paramètre apiKey, vous n’avez rien besoin de modifier pour le moment, c’est simplement la manière dont l’API va récupérer les informations qui change.
    - Si vous utilisiez un fichier d’autoconfiguration «local», généré avant la publication de ces versions, vous pouvez en générer un nouveau (cf. 2.3.), ou utiliser le paramètre apiKey (2.1. ou 2.2.). Pour l’appeler, il faut utiliser le paramètre «*customConfigFile*».



    3. Producteurs de données (originators) et métadonnées (metadata) associés à une couche Géoportail ne sont plus listés automatiquement

    Les GetCapabilities des services, utilisés pour se passer du service d'autoconfiguration, ne permettent pas de récupérer l'ensemble des informations retournées par l'autoconfiguration et exploitées par les API JavaScript Géoportail.
    Ainsi, les producteurs de données (originators) et les métadonnées (metadata) associés aux couches Géoportail ne sont plus listés automatiquement dans la configuration d'une couche Géoportail, lors d'un appel à Gp.Config, ou d'un ajout simplifié de couches Géoportail à la carte et aux widgets (Extensions et SDK).


    3.1. Originators (producteurs de données)

    Les originators (liste et informations des producteurs d’une couche de données), sont actuellement utilisés par les API par le contrôle d'attributions. Celui-ci va lire les originators des couches visibles et automatiquement les afficher dans l'encart dédié selon le paramétrage courant de la vue cartographique (zoom, emprise). Désormais, pour que ces informations soient affichées dans le contrôle d’attributions, il faudra renseigner les originators manuellement lors de l'ajout de couches Géoportail.

    Exemple Extensions Geoportail pour OpenLayers pour ajouter des originators manuellement

    Code javascript : 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
     
    var gpOrtho = new ol.layer.Tile({
                source: new ol.source.GeoportalWMTS({
                    layer: "ORTHOIMAGERY.ORTHOPHOTOS",
                    olParams: {
                        attributions: [{
                            name: "Nom raccourci originator",
                            constraints: [{
                                minScaleDenominator: 20000,
                                maxScaleDenominator: 1000000,
                                bbox: {
                                    left: -10,
                                    top: 50,
                                    right: 10,
                                    bottom: 40
                                }
                            },
                            {
                                bbox: {
                                    left: 120,
                                    top: 50,
                                    right: 150,
                                    bottom: 35
                                }
                            }
                        ]
                        },
                        {
                            url: "http://www.url-vers-le-site-du-producteur.fr",
                            constraints: [{
                                minScaleDenominator: 20000,
                                maxScaleDenominator: 400000
                            }]
                        },
                        {
                            logo: "https://lien-vers-le-logo.png"
                        },
                        {
                            attribution: "Titre complet originator",
                            constraints: [{
                                minScaleDenominator: 100000,
                                maxScaleDenominator: 800000
                            }]
                        }]
                    }
                })
            });

    Exemple Extensions Geoportail pour Leaflet pour ajouter des originators manuellement

    Code javascript : 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
     
    var layer = L.geoportalLayer.WMTS({
                layer: "ORTHOIMAGERY.ORTHOPHOTOS"
            },
            {
                originators: [{
                    name: "Nom raccourci originator",
                    constraints: [{
                        minScaleDenominator: 20000,
                        maxScaleDenominator: 1000000,
                        bbox: {
                            left: -10,
                            top: 50,
                            right: 10,
                            bottom: 40
                        }
                    },
                    {
                        bbox: {
                            left: 120,
                            top: 50,
                            right: 150,
                            bottom: 35
                        }
                    }
                    ]
                },
                {
                    url: "http://www.url-vers-le-site-du-producteur.fr",
                    constraints: [{
                        minScaleDenominator: 20000,
                        maxScaleDenominator: 400000
                    }]
                },
                {
                    logo: "https://lien-vers-le-logo.png"
                },
                {
                    attribution: "Titre complet originator",
                    constraints: [{
                        minScaleDenominator: 100000,
                        maxScaleDenominator: 800000
                    }]
                }]
            });


    Exemple Extensions Geoportail pour iTowns pour ajouter des originators manuellement

    Code javascript : 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
     
    // Couche WMTS Geoportail
    globeView.addLayer(new Gp.itownsExtended.layer.GeoportalWMTS({
        layer: "ORTHOIMAGERY.ORTHOPHOTOS",
        itownsParams: {
            source: {
                attribution: [{
                    "name": "Nom raccourci originator",
                    "url": "http://www.url-vers-le-site-du-producteur.fr",
                    "constraints": [{
                        "crs": "EPSG:4326",
                        "bbox": {
                            "left": -180,
                            "right": 180,
                            "top": 90,
                            "bottom": -90
                        },
                        "minScaleDenominator": 2,
                        "maxScaleDenominator": 800000
                    }]
                },
                {
                    "name": "Nom raccourci originator 2",
                    "url": "http://www.url-vers-le-site-du-producteur2.fr",
                    "constraints": [{
                        "crs": "EPSG:4326",
                        "bbox": {
                            "left": 1.5,
                            "right": 3,
                            "top": 49,
                            "bottom": 48
                        },
                        "minScaleDenominator": 10000,
                        "maxScaleDenominator": 450000
                    }]
                }]
            }
        }
    }));

    Exemple SDK 3D pour ajouter des originators manuellement

    Code javascript : 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
     
    "TRANSPORTNETWORKS.RAILWAYS" : {
        originators: [{
            "name": "Nom raccourci originator",
            "attribution": "Titre complet originator",
            "url": "http://www.url-vers-le-site-du-producteur.fr",
            "constraints": [{
            "crs":"EPSG:4326",
            "bbox": {
                "left": -63.09696,
                "right": 55.826077,
                "top": 51.073032,
                "bottom": -21.385712
            },
            "minScaleDenominator": 0,
            "maxScaleDenominator": 559082265,
            "temporalExtent": ["2016-02-18","2016-02-18"]
            }]
        }]
    }

    3.2. Metadatas

    Les metadatas, ou métadonnées,sont utilisées dans les API par le contrôle gestionnaire de couches (LayerSwitcher). Celui-ci va lire les metadatas des couches ajoutées à la carte et les afficher dans l'encart d'information dédié du LayerSwitcher. **Pour les couches WMTS uniquement**, désormais, pour que les métadonnées apparaissent dans l'onglet "informations" du LayerSwitcher, il faudra les renseigner manuellement à la configuration de la couche Géoportail lors de son ajout à la carte.

    Exemple Extensions Geoportail pour OpenLayers pour ajouter des metadatas manuellement

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    new ol.layer.Tile({
        source: new ol.source.GeoportalWMTS({
            layer: "ORTHOIMAGERY.ORTHOPHOTOS",
            metadata: [
                {
                    format: "xml",
                    url: "lien/Vers/Une/MetaDonnee.xml"
                }
            ],
        })
    })

    Exemple Extensions Geoportail pour iTowns pour ajouter des metadatas manuellement

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    // Couche WMTS Geoportail
    globeView.addLayer(new Gp.itownsExtended.layer.GeoportalWMTS({
        layer: "ORTHOIMAGERY.ORTHOPHOTOS",
        ssl: true,
        metadata: [
            {
                format: "xml",
                url: "lien/Vers/Une/MetaDonnee.xml"
            }
        ]
    }));

    Exemple Extensions Geoportail pour Leaflet pour ajouter des metadatas manuellement

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    var maCoucheGeoportail = L.geoportalLayer.WMTS({
        layer: "GEOGRAPHICALGRIDSYSTEMS.PLANIGNV2"
    }, {
        metadata: [
            {
                format: "xml",
                url: "lien/Vers/Une/MetaDonnee.xml"
            }
        ]
    });

    Exemple SDK 3D pour ajouter des metadatas manuellement

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    "ORTHOIMAGERY.ORTHOPHOTOS" : {
        metadata: [
            {
                format: "xml",
                url: "lien/Vers/Une/MetaDonnee.xml"
            },
            {
                format: "xml",
                url: "lien/Vers/Une/MetaDonnee.xml"
            }
        ]
    }

    Et ensuite ?

    De nouvelles versions des API JavaScript Geoportail seront publiées au cours de l’été 2023. Ces versions permettront d’utiliser les nouvelles URL des flux et services de la Géoplateforme ainsi que son système d’authentification. Cette seconde montée de version sera à réaliser avant fin 2023 afin que les API JavaScript Géoportail continuent de fonctionner dans vos applications.

  15. #15
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2009
    Messages
    868
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2009
    Messages : 868
    Points : 371
    Points
    371
    Par défaut
    Bonjour
    Quelle est la version recommandée de Openlayers pour utiliser cette nouvelle version ?

  16. #16
    Membre averti Avatar de lowzonenose
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2014
    Messages : 196
    Points : 407
    Points
    407
    Par défaut
    La version OpenLayers v6 est testée.
    Il est toujours possible d'utiliser la v7 mais sans aucune garantie (cf. http://https://github.com/openlayers/openlayers/blob/main/changelog/v7.0.0.md)

  17. #17
    Membre actif
    Homme Profil pro
    Architecte progiciel et développeur informatique
    Inscrit en
    Février 2011
    Messages
    228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte progiciel et développeur informatique

    Informations forums :
    Inscription : Février 2011
    Messages : 228
    Points : 286
    Points
    286
    Par défaut
    Bonjour,

    à ma connaissance et avec les différents tests que j'ai fait avec les dernières versions OpenLayers 7.x (à date 7.4.0), la librairie IGN OpenLayers n'est pas compatible.

    Il existe d'ailleurs sur le Github un issue qui indique le problème toujours pas résolu, même avec les commentaires indiqués, ça ne fonctionne pas.
    l'IGN devait travailler sur le sujet, mais pas de suite pour l'instant.
    https://github.com/IGNF/geoportal-extensions/issues/337

    Dernière version de OpenLayers full compatible avec la librairie IGN actuelle : 6.15.1
    https://github.com/openlayers/openla...es/tag/v6.15.1
    Il existe bien sûr des CDN éventuellement.

    Xav

  18. #18
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2009
    Messages
    868
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2009
    Messages : 868
    Points : 371
    Points
    371
    Par défaut
    Bonjour

    Comme beaucoup d'entre nous, j'ai reçu le mail "Alerte - Anticipez la bascule des Géoservices IGN vers la Géoplateforme"

    Ce message renvoie à

    https://geoservices.ign.fr/bascule-v...d-000d3ab22fc7,

    page dans laquelle il y a un lien vers la documentation

    https://geoservices.ign.fr/documenta...-geoplateforme

    On trouve dans "Utilisation WEB/Extension pour Openlayers" ce qui concerne le changement de l'utilisation des CLEFs. Plusieurs méthodes sont présentées mais pas celle du GetConfig qui figure dans la page de téléchargement des extensions https://github.com/IGNF/geoportal-extensions/releases

    Est-ce intentionnel ? L'utilisation du Getconfig est-elle déconseillée ?

  19. #19
    Membre éclairé Avatar de elias couppe
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2014
    Messages
    418
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2014
    Messages : 418
    Points : 805
    Points
    805
    Par défaut
    Bonjour,

    je t'invite à relire la page : la Méthode 2 détaillée consiste au chargement de la configuration des clés à partir de la méthode getConfig.

    Nom : Capture d’écran du 2023-07-18 19-21-29.png
Affichages : 989
Taille : 28,3 Ko

    Il n'y a pas de problème à l'utiliser.

  20. #20
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2009
    Messages
    868
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Avril 2009
    Messages : 868
    Points : 371
    Points
    371
    Par défaut
    Bonjour
    Désolé mais j'aurais dû être plus précis.
    Ma question portait sur l'utilisation du customConfigFile dans getConfig
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    	Gp.Services.getConfig({
            customConfigFile: 'OpenLayer_Licences/customConfig.json',
    		callbackSuffix : '',
    			onSuccess: function (response) {
    			go(false);
                        },
    					onError: function (response) {
    							console.log(response);
                        }
    });
    Cette possibilité n'est pas évoqué, ni la page permettant de créer le fichier json alors que tu en parles dans le même post (07/06/2023), d'où ma question

Discussions similaires

  1. [WEB][CRAWLING]Questions autour des sites d'actualités.
    Par nixmind dans le forum Général Conception Web
    Réponses: 0
    Dernier message: 22/04/2016, 12h53
  2. Question autours des tailles des types
    Par chronos_ dans le forum Langage
    Réponses: 1
    Dernier message: 06/08/2013, 11h01
  3. [VxiR2] Questions autour des performances de Desktop Intelligence
    Par Migraine dans le forum Deski
    Réponses: 4
    Dernier message: 21/03/2011, 16h25
  4. Questions autour des applets
    Par nodules dans le forum Applets
    Réponses: 1
    Dernier message: 25/08/2010, 15h14
  5. [JSF] Questions autour des servlets
    Par maximus001ma dans le forum JSF
    Réponses: 4
    Dernier message: 25/07/2006, 13h27

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