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 :

résolutions et échelles couche WMTS


Sujet :

IGN API Géoportail

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2012
    Messages : 73
    Points : 67
    Points
    67
    Par défaut résolutions et échelles couche WMTS
    Bonjour,

    J'aimerais pouvoir calculer l'échelle d'une carte à un niveau de zoom donné.

    La méthode getScale() de la carte OL le fait très bien mais j'aimerais savoir comment obtenir ce résultat dans une application hors ligne (en tout cas sans OL ou l'API Géoportail) en me basant uniquement sur les informations du fichier autoconf.

    Par exemple j'ai la correspondance entre niveau de zoom et échelle suivante :
    zoom = 14, échelle = 27083.932232286505

    Je n'arrive pas à retrouver la formule pour retrouver cette échelle en me basant sur les balises gpp:Resolutions et les ScaleDenominators qu'il y a dans la description de la TileMatrix PM.
    Comment procéder ?

    Question subsidiaire, quelles sont les unités de ces différentes balises ?

    Merci

  2. #2
    Membre chevronné Avatar de gcebelieu
    Homme Profil pro
    Ingénieur Géographe et Cartographe
    Inscrit en
    Novembre 2010
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Géographe et Cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2010
    Messages : 1 106
    Points : 1 843
    Points
    1 843
    Par défaut
    Bonjour,

    sur la page suivante :

    http://api.ign.fr/tech-docs-js/fr/webmaster/layers.html

    on trouve un tableau avec les correspondances entre : niveau de zoom, échelle et résolutions (en mètre "webmercator").

    Les valeurs de la balise résolutions dans le résultat de l'autoconf sont en degrés décimaux (système WGS84). Elles correspondent aux valeurs du tableau cité ci-dessus, reprojetées en WGS84.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2012
    Messages : 73
    Points : 67
    Points
    67
    Par défaut
    Merci pour cette ressource.

    Dans le tableau je trouve donc que pour le niveau de zoom 14 :
    - résolution (m) = 9.554629
    - échelle approx. = 1 : 34 124
    - résolution géographique = 0.0000858307 (au passage ça devrait être deg/px au lieu de px/deg non ?)

    Si je vais sur m.geoportail.fr je trouve les valeurs suivantes pour le zoom 14 :
    > viewer.getMap().getZoom() -> 14
    > viewer.getMap().getResolution() -> 9.554629
    > viewer.getMap().getScale() -> 27 083.9

    Pour l'échelle uniquement ça ne colle pas avec le tableau. D'où vient la différence ?

  4. #4
    Membre chevronné Avatar de gcebelieu
    Homme Profil pro
    Ingénieur Géographe et Cartographe
    Inscrit en
    Novembre 2010
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Géographe et Cartographe
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2010
    Messages : 1 106
    Points : 1 843
    Points
    1 843
    Par défaut
    En préambule :

    la résolution est une distance "terrain" par pixel, et correspond donc aux données que l'on sert : on sait qu'un pixel représente "exactement" telle distance terrain.

    l'échelle est un rapport entre une distance terrain et une distance mesurée sur... l'écran de l'ordinateur, la carte papier,... : le support que l'on consulte. Si on est sur un écran d'ordinateur, elle va varier d'un écran à un autre selon ses caractéristiques (notamment : taille du pixel de l'écran). On ne peut donc parler que d'échelles *approximatives*.

    Cela étant dit :

    * Dans le tableau, les échelle présentées sont celles du tableau de correspondances donné dans le standard WMTS 1.0, "Table E.4 — Definition of Well-known scale set GoogleMapsCompatible". Le calcul est fait selon la formule :

    denominateur = resolution(m/px) / 0.00028

    où 0.00028 est une constante correspondant à une taille "standard" de pixel (0.28mm x 0.28mm) . cf. page 8 du même standard WMTS :

    The scale denominator is defined with respect to a "standardized rendering pixel size" of 0.28 mm × 0.28 mm (millimeters)
    * La valeur retournée par la fonction viewer.getMap().getScale() résulte du calcul suivant (lu dans le code) :

    scale = resolution * OpenLayers.INCHES_PER_UNIT[units] *
    OpenLayers.DOTS_PER_INCH

    où, OpenLayers.INCHES_PER_UNIT[units] vaut : 39.37 (pour des metres)
    et OpenLayers.DOTS_PER_INCH vaut : 72 (constante "arbitraire" établie par OpenLayers). Ce qui nous fait, une taille de pixel de 0,000352778 mètres. D'où la différence.

    Bref, ce qu'il faut retenir de ces calculs c'est que le tableau présenté sur le site api.ign.fr donne des échelles calculées selon une taille *standard* de pixel de 0.28mm. Alors que la valeur retournée par la formule pointée est calculée selon une taille arbitraire de pixel de 0.35mm.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2012
    Messages : 73
    Points : 67
    Points
    67
    Par défaut
    Merci, je n'ai pas du tout pensé à regarder les constantes d'OpenLayers.

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

Discussions similaires

  1. De la précision des couches wmts
    Par vbain dans le forum IGN API Géoportail
    Réponses: 4
    Dernier message: 13/02/2013, 10h01
  2. WMTS: relation entre résolution, échelle et ScaleDenominator
    Par mga_geo dans le forum IGN API Géoportail
    Réponses: 3
    Dernier message: 08/10/2012, 13h35
  3. Réponses: 10
    Dernier message: 22/09/2012, 15h11
  4. flux WMTS : nomenclature des couches de pyramides
    Par vbain dans le forum IGN API Géoportail
    Réponses: 3
    Dernier message: 31/08/2012, 10h03
  5. [Impression] Probleme d'échelle/résolution
    Par Dajon dans le forum C++Builder
    Réponses: 3
    Dernier message: 12/05/2003, 14h56

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