Maison >Java >javaDidacticiel >Comment convertir la latitude et la longitude en projections Mercator ?

Comment convertir la latitude et la longitude en projections Mercator ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-08 18:31:02206parcourir

How do you convert latitude and longitude to Mercator projections?

Projection Mercator : Conversion de la latitude/longitude en projections Mercator

La projection Mercator est une projection cartographique conforme et équidistante le long de lignes particulières. Il préserve la forme mais pas la zone et est largement utilisé pour les cartes de navigation.

Conversion de la latitude/longitude en projections Mercator

Pour convertir un point de latitude/longitude en un Projection Mercator, nous utilisons les formules suivantes :

E = FE + R (λ – λₒ)
N = FN + R ln[tan(π/4 + φ/2)] 

où :

  • E est l'Est projetée
  • N est l'Orientation projetée
  • λ est la longitude
  • φ est la latitude
  • FE est la fausse ordonnée
  • FN est la fausse ordonnée
  • λₒ est la longitude d'origine naturelle

Pour la sphère Mercator, FE et FN valent 0, simplifiant la formule à :

E = R * (λ – λₒ)
N = R * ln[tan(π/4 + φ/2)]

Exemple de code

En pseudo code, nous convertissons la latitude et la longitude en projections Mercator comme suit :

latitude    = 41.145556; // (φ)
longitude   = -73.995;   // (λ)

mapWidth    = 200;
mapHeight   = 100;

// get x value
x = (longitude+180)*(mapWidth/360)

// convert from degrees to radians
latRad = latitude*PI/180

// get y value
mercN = ln(tan((PI/4)+(latRad/2)));
y     = (mapHeight/2)-(mapWidth*mercN/(2*PI));

En appliquant ces formules et en convertissant les radians en degrés si nécessaire, nous pouvons convertir avec précision les points de latitude/longitude en projections Mercator. Cette connaissance est essentielle pour afficher les données sur les cartes projetées par Mercator.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn