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 :

Api OL3: tranformation de coordonnées


Sujet :

IGN API Géoportail

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2008
    Messages : 19
    Points : 12
    Points
    12
    Par défaut Api OL3: tranformation de coordonnées
    Bonjour,
    je suis en train d'écrire une appli avec les nouvelles API Geoportail/OL3 et je me heurte à un problème de transformation de coordonnées:
    Avec OL2 je faisais comme ceci => var pos = new OpenLayers.Geometry.Point(lon_dg, lat_dg).transform(OpenLayers.Projection.CRS84, map.getProjection());
    Avec OL3 je fais comme ceci => var pos = new ol.geom.Point([lon_dg, lat_dg]).transform('EPSG:4326','EPSG:3857'); mais mes points se retrouvent en Atlantique sud. Si je passe la carte en projection EPSG:4326 tout ce passe bien ...

    je ne maitrise pas trop ces problèmes de projection, j'ai dû rater quelque chose, merci de votre aide.

    ludo

  2. #2
    Membre confirmé Avatar de lboulanger
    Femme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2014
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2014
    Messages : 262
    Points : 529
    Points
    529
    Par défaut
    Bonjour,

    Pouvez-vous nous donner un exemple de jeu de coordonnées que vous testez, et les coordonnées de la variable pos que vous obtenez après utilisation de cette fonction ?
    Vous pouvez peut être aussi jeter un œil à la fonction ol.proj.transform(), qui permet aussi de transformer des coordonnées.

    Laurane

  3. #3
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2008
    Messages : 19
    Points : 12
    Points
    12
    Par défaut
    Merci pour votre réponse,
    je pars de coordonnées en degrés décimaux, par exemple: 4.693167 , 45.713333, dans la console après le transform elles deviennent 522440.96064779535 , -5509912.125454668, ce qui semble être des coordonnées Lambert....
    j'ai essayé aussi ol.proj.tranform() qui renvoie la même chose.

    Ludo

  4. #4
    Membre confirmé Avatar de lboulanger
    Femme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2014
    Messages
    262
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2014
    Messages : 262
    Points : 529
    Points
    529
    Par défaut
    De mon côté, l'instruction suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var coords = ol.proj.transform([4.693167,45.713333], "EPSG:4326", "EPSG:3857");
    retourne le résultat suivant pour la variable coords :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [522440.96064779535, 5734529.037766118]
    Ce qui semble correspondre aux mêmes coordonnées en Pseudo Mercator (EPSG:3857).
    A partir de ces coordonnées, vous pourrez sans doute construire votre point comme vous le faisiez :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var pos = new ol.geom.Point(coords);
    NB: le site epsg.io peut vous être utile pour tester vos coordonnées.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2008
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Janvier 2008
    Messages : 19
    Points : 12
    Points
    12
    Par défaut
    merci pour votre aide,
    cela m'a permis de déceler une erreur d'interprétation sur mes latitudes, j'ai rajouté un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [parseFloat(lon_dg),parseFloat(lat_dg)]
    et cela fonctionne !

    Encore merci

    Ludo

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 11/06/2015, 12h39
  2. [Autres] Recherche API Google pour récupérer coordonnées de business
    Par Pierrick81 dans le forum APIs Google
    Réponses: 2
    Dernier message: 03/10/2011, 13h40
  3. API Google Map Obtenir coordonnées en fct de l'écran
    Par jeanjean6 dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 23/08/2011, 14h39
  4. API Windows C récupérer les coordonnées d'un bouton
    Par azimut2 dans le forum Windows
    Réponses: 24
    Dernier message: 30/11/2009, 13h47
  5. [Google Maps] Coordonnées fausses ?
    Par Invité dans le forum APIs Google
    Réponses: 2
    Dernier message: 02/06/2009, 10h09

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