Coordonnées GPS et position X Y
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

Coordonnées GPS et position X Y



  1. #1
    MrPortefeuille

    Coordonnées GPS et position X Y


    ------

    Bonjour à tous,

    je suis actuellement en train de développer sous LiveCode (un logiciel de programmation objet) un système de géolocalisation grâce aux coordonnées GPS d'une tablette.
    Le principe est quand l'utilisateur de la tablette lance l'application, une carte s'ouvre (une carte de google earth de la place devant mon espace de travail) avec un rond bleu qui représente la position de l'utilisateur, et en fonction des coordonnées GPS de la tablette (latitude, longitude) et une conversion pour passer ces coordonnées en pixels, le rond bleu devrait normalement suivre le déplacement de l'utilisateur avec la tablette. Un peu comme un vrai GPS mais cette fois-ci l'utilisateur est à pied !

    Je me suis dis qu'avec un petit calcul et en connaissant les coordonnées GPS de la carte ça serait du gâteau... mon dieu j'ai été bien bête...
    Et oui, la terre étant ronde et convertir des coordonnées GPS en position XY n'est pas aussi simple.
    J'ai cherché un peu partout comment je pouvais faire, je suis tombé sur des solutions de Mercator, de Lambert et une foule d'explication sur les façons de calculer par rapport à l'angle de la terre...
    Bref j'ai rien compris... car il faut le préciser je suis une buse en maths...
    Ma carte fait du 800 par 600 en pixels, et j'aimerais convertir la latitude et la longitude de l'endroit où se trouve l'utilisateur en position x,y en pixels pour l'associer à la carte.

    Ma question est donc la suivante : avez-vous déjà essayé la géolocalisation par coordonnées GPS? Est-ce possible? Si oui comment s'y prendre? (ça fait trois questions ça! :c )

    Merci d'avance!

    -----
    Images attachées Images attachées  

  2. #2
    cherbe

    Re : Coordonnées GPS et position X Y

    Bonjour
    Citation Envoyé par MrPortefeuille Voir le message
    Je me suis dis qu'avec un petit calcul et en connaissant les coordonnées GPS de la carte ça serait du gâteau... mon dieu j'ai été bien bête...
    Et oui, la terre étant ronde
    Pour te saper davantage le moral, j'ajouterai 4 considérations supplémentaires qui compliquent encore la situation :
    1/
    La terre n'est pas seulement ronde. C'est une sphère ou plus exactement un sphéroïde ayant des hauteurs très variables (niveau de la mer, Everest...).

    2/
    Les latitudes sont généralement données avec le Nord en haut de la carte. Pour nous habitants de l’hémisphère Nord, plus on monte, plus le nombre de degrés augmente... Et les coordonnées écran sont notées dans le sens inverse !

    3/
    Puisque la terre est un sphéroïde, le degré zéro est choisi arbitrairement. Pour la latitude, on part de l'équateur. Pour la longitude, on part d'un méridien quelconque. Dans les deux cas, les coordonnées sont positives dans une direction et négatives dans l'autre ce qui complique la conversion car l'écran n'a pas de pixel négatif !

    Rassure-toi pour ces trois points, il existe des solutions et ce n'est pas trop compliqué. Contrairement à ce que tu penses, il est possible et facile de convertir des coordonnées géographiques en pixels écran. Avant de te donner la solution de ces trois points, il faudra résoudre le suivant :

    4/
    Il faut disposer des informations suivantes :
    - dimensions de la carte en pixels ;
    - dimensions de la carte en coordonnées géographiques.
    Dans les deux cas, on prend les coordonnées de deux coins diagonalement opposés.
    Les dimensions en pixels peuvent être lues sur un logiciel de dessin.
    C'est un peu plus compliqué pour les coordonnées géographiques. Si tu as deux points de repères facilement identifiables sur ta carte, tu peux aller sur Earth ou tout autre logiciels de ce genre pour lire les coordonnées de ces points mais ça marche rarement, surtout dans la nature.
    L'autre solution consiste à te procurer "des tuiles" (photos) géoréférencées du secteur qui t'intéresse.
    Moi j'utilise NoniMapView pour me procurer des photos calibrées.
    commence par là. Si tu y arrives, on verra ensuite comment les exploiter.

    J'ai fait une petite application en JS-HTML5 ressemblant à ce que souhaite faire. C'est ici

  3. #3
    MrPortefeuille

    Re : Coordonnées GPS et position X Y

    Bonjour et merci de ta réponse !

    Pour la dimension de la carte en pixels comme je l'ai prise directement de Google Earth, je connais déjà la dimension, 800 de longueur et 600 de largeur.

    Pour les dimensions de la carte en coordonnées géographiques, je me suis dis que si l'image était orienté dans l'axe Nord-Sud ça serait plus pratique pour les tests. J'ai donc changé la prise de vue de la photo de la carte que je remets en pièce jointe.
    Comme tu l'as précisé, j'ai pris les coordonnées de deux coins diagonalement opposés :

    Angle en haut à gauche : latitude : 46,58043 / longitude : 0,3480050
    Angle en bas à droite : latitude : 46,580010 / longitude : 0,348580

    Les coordonnées proviennent de Google Earth, je testerai ce soir avec ton logiciel NoniMapView, ma connexion en ce moment me permet pas de télécharger la moindre application.

    Je vais continuer les recherches et les tests en espérant trouver la solution !
    Images attachées Images attachées  

  4. #4
    cherbe

    Re : Coordonnées GPS et position X Y

    Citation Envoyé par MrPortefeuille Voir le message
    Pour les dimensions de la carte en coordonnées géographiques, je me suis dis que si l'image était orienté dans l'axe Nord-Sud ça serait plus pratique pour les tests.
    Pas seulement les tests. c'est le sens habituel. Si tu avais choisi une autre orientation, l'utilisateur aurait été dérouté.
    Citation Envoyé par MrPortefeuille Voir le message
    je testerai ce soir avec ton logiciel NoniMapView
    C'est inutile pour l'instant. On a tout ce qu'il nous faut !

    La dimension de l'image en degrés de longitude est : longitude max - longitude min = 0.0005755
    600 pixels X représentent 0.0005755° longitude ; 1 pixel représente 0.0005755° / 600 = 0.0000009583°
    La dimension de l'image en degrés de latitude est latitude max -latitude min = 0.00042
    800 pixels Y représentent 0.00042° de latitude ; 1 pixel Y représente 0.000000525°

    Supposons que ton GPS te fournit un jeu de coordonnées au milieu de l'image. Il indique :
    0.34829275° de longitude et 46.58022° de latitude
    Pour positionner ton repère au milieu de l'image :
    (Lon = longitude ; Lat = latitude)
    X = (Lon GPS - Lon min-image) / dim-pixel-X soit : (0.34829275 - 0.348005) / 0.0000009583 = 300 pixels
    Y = (Lat GPS - Lat min-image) / dim-pixel-Y soit : (46.58022 - 46.58001) / 0.000000525 = 400 pixels

    Il y a un piège dans le calcul de Y mais je te laisse le découvrir !
    Dernière modification par cherbe ; 01/06/2015 à 18h14. Motif: complément

  5. A voir en vidéo sur Futura
  6. #5
    MrPortefeuille

    Re : Coordonnées GPS et position X Y

    Merci pour ta réponse ! J'avais réussi à trouver entre temps, c'est tout bête comme règle de 3 x)
    Je pense que le piège pour Y que tu voulais que je devines est au niveau des signes négatives ?
    Sinon je l'ai testé et ça fonctionne plus ou moins, j'ai réglé au mieux l'approximation et le résultat obtenu est très concluant !
    Merci encore pour ton aide, bonne fin de journée.

  7. #6
    cherbe

    Re : Coordonnées GPS et position X Y

    Citation Envoyé par MrPortefeuille Voir le message
    Je pense que le piège pour Y que tu voulais que je devines est au niveau des signes négatives ?
    Oui. Il faut faire 800 - Y pour inverser Y. Mon exemple fonctionnait car on était au milieu de l'écran.
    Citation Envoyé par MrPortefeuille Voir le message
    Sinon je l'ai testé et ça fonctionne plus ou moins,
    Qu'est-ce qui fonctionne plus ou moins ?
    C'est un problème de précision du positionnement ou de réactivité du programme ?
    Si c'est la précision, tu obtiendras de meilleur résultats avec une image correctement calibrée.
    Si c'est la réactivité du programme, je ne connais pas Livecode mais j'ai vu des démos et je le trouve assez lent comparé à Javascript.

  8. #7
    MrPortefeuille

    Re : Coordonnées GPS et position X Y

    C'est la conversion qui fonctionne plus ou moins, mais je te rassure ça décale pour exemple mon point bleu de quelques mètres à peine à certains moments, c'est sûrement lié au GPS de la tablette qui pa moement peut être moins efficace ou capte moins.

    Je pense pas que ça provienne de LiveCode, mon programme tourne correctement et assez vite.

    Pour mon projet la précision que j'obtiens est largement suffisante !
    Je suis déjà plutôt "fier" d'avoir réalisé un système de géolocalisation sur tablette avec un logiciel que je ne connaissais pas

  9. #8
    cherbe

    Re : Coordonnées GPS et position X Y

    Citation Envoyé par MrPortefeuille Voir le message
    C'est la conversion qui fonctionne plus ou moins, mais je te rassure ça décale pour exemple mon point bleu de quelques mètres à peine à certains moments, c'est sûrement lié au GPS de la tablette qui pa moement peut être moins efficace ou capte moins.
    Oui, j'ai le même soucis avec mon smartphone, quelque soit le logiciel. Les puces GPS intégrées à ces appareils sont de qualité très moyenne et l'antenne est nettement insuffisante.
    Si tu as fait tes essais à l'endroit de la photo, le GPS est également gêné par les arbres et le grand bâtiment.

  10. #9
    Stan_94

    Re : Coordonnées GPS et position X Y

    Hello,
    Je me permets juste une remarque.
    Moi j'aurais plutôt laisser le point au centre et fait défiler la carte en fonction des coordonnées GPS.
    Mais tu a peut-être une contrainte particulière !

Discussions similaires

  1. Plan: passage de coordonnées cartésiennes en coordonnées paramétriques
    Par Jon83 dans le forum Mathématiques du collège et du lycée
    Réponses: 4
    Dernier message: 01/06/2013, 16h32
  2. Passage de coordonnées cartésiennes d'un écran en pixel en coordonnées GPS
    Par invite941c057e dans le forum Mathématiques du supérieur
    Réponses: 3
    Dernier message: 03/09/2010, 21h16
  3. passage expression en coordonnees cartesiennes aux coordonnees cylindriques sous maple
    Par invite1a831391 dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 21/01/2009, 01h05
  4. Vecteur position et vitesse.Système de coordonnées.
    Par invite8056a839 dans le forum Physique
    Réponses: 2
    Dernier message: 09/10/2006, 21h07