#1 Fri 06 July 2018 17:15
- thierry69007
- Juste Inscrit !
- Date d'inscription: 6 Jul 2018
- Messages: 1
[Conversion] WGS84 vers LT93 à la "main"
Bonjour,
Je souhaitais réaliser une application permettant entre autre chose de convertir mes trames NMEA venant d'un GPS en Lambert93.
J'ai longtemps utilisé une DLL appelée conversapi.dll qui était compatible avec le langage que j'utilise (Delphi).
Maintenant je ne peux plus l'utiliser et j'ai donc utilisé les algorithmes dans ce document :
https://geodesie.ign.fr/contenu/fichier … NTG_71.pdf
J'ai vérifié les algorithmes avec les jeux de données en exemple, et à priori tout est bien codé.
Le problème c'est que lorsque je veux convertir par exemple 45°N,5°E (WGS84) en Lambert 93 (cas sécant) je trouve X=857581.89931694m avec l'utilitaire Convers (vtopofree.fr) et avec mon programme un truc totalement différent.
J'en conclu me tromper dans les constantes à utiliser
Voici ce que j'ai utilisé :
J'ai mis Impact/Sans impact quand la constante influe le résultat ou non. (j'ai codé tous les algorithmes du coups certaines constantes ne servent pas forcément dans mon cas).
Tous les angles sont en radians.
Données d'entrée:
lambda=0.0872664625997165; //Longitude (5°Est) (données)
phi=0.872664626;// 0.785398163397448; //Latitude (45°Nord) (données)
demigrandaxe=6378137; //Impact
e=0.0818191910428158;// Impact //excentricité
xs=700000; //Sans Impact //Coordonnées en projection du pôle
ys=12655612.050; //Sans Impact //Coordonnées en projection du pôle
n=0.725607765; //Sans Impact //exposant de la projection
c=11754255.426; //Sans Impact //constante de la projection
lambda0=0.0523598775598299;//Impact // Longitude origine par rapport au méridien origine ( 3°)
phi0=0.808080;// 0.811578102177363;// Impact //Latitude origine (46,5°)
Y0=6600000; //Impact //Coordonnées Nord (N0)
X0=700000; //Impact //coordonnées Est LT93 (E0)
k0=1;//Sans Impact //0.999051030064; //Facteur d'échelle
phi1=0.767944870877505; //Impact //Premier parallele automécoïque (44°)
phi2=0.855211333477221; //Impact //Second parallele automécoïque (49°)
erreur=0.00000000001; //Critere de convergence
Y a t il une erreur flagrante de ma part ? Sur mon utilitaire Convers, je ne peux pas choisir entre le cas sécant ou tangent.
Merci de m'avoir lu ...
Cordialement, Thierry
Hors ligne
#2 Fri 06 July 2018 17:43
- Pascal Boulerie
- Participant assidu
- Lieu: France
- Date d'inscription: 12 Sep 2005
- Messages: 2947
- Site web
Re: [Conversion] WGS84 vers LT93 à la "main"
Le logiciel Circé - sur Windows - répond-t-il à votre besoin ?
https://geodesie.ign.fr/?p=63&page=circe
« L'État est désormais quasi déliquescent. » (José Cohen-Aknine, ingénieur X-Ponts, IGPEF, dans Déliquescence et renaissance de l'État.)
Hors ligne
#3 Fri 06 July 2018 18:46
- Yves Egels
- Participant assidu
- Lieu: Paris
- Date d'inscription: 29 Sep 2011
- Messages: 268
- Site web
Re: [Conversion] WGS84 vers LT93 à la "main"
Une solution très efficace est d'utiliser proj4, bibliothèque libre de transformation de coordonnées, bien documentée et très à jour. Si cela vous intéresse, je peux vous envoyer les headers Pascal pour y accéder (j'utilise Lazarus, il ne doit pas y avoir de pb avec Delphi) On les trouve également là : https://github.com/giangianoulas/fp_proj.4
Ingénieur géographe honoraire
École nationale des sciences géographiques
Société française de photogrammétrie et télédétection
Hors ligne