Convertire una coordinata geografica dal sistema EPSG:4326 WGS 84 al sistema EPSG:3857 e viceversa

Da Gambas-it.org - Wikipedia.
Versione del 5 gen 2024 alle 18:13 di Vuott (Discussione | contributi) (Creata pagina con "Per convertire una coordinata geografica (Longitudine e Latitudine) dal sistema EPSG:4326 WGS 84 al sistema EPSG:3857, si potranno adottare le seguenti formule: Private Funct...")

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

Per convertire una coordinata geografica (Longitudine e Latitudine) dal sistema EPSG:4326 WGS 84 al sistema EPSG:3857, si potranno adottare le seguenti formule:

Private Function ConversioneCoordinate(lon As Float, lat As Float) As Float[]

  Dim x, y As Float
   
  x = (lon * 20037508.34) / 180
  y = (Log(Tan((90.0 + (lat)) * Pi / 360.0)) / (Pi / 180.0)) * 111319.490778

  Return [x, y]

End

laddove "lon" e "lat" sono le coordinate geografiche (Longitudine e Latitudine) nel sistema EPSG:4326 WGS 84 in formato decimale (esempio: 12.935740 e 40.916274), mentre x e y sono le analoghe coordinate, ma del sistema EPSG:3857.


Convertire una coordinata geografica (Longitudine e Latitudine) dal sistema EPSG:3857 al sistema EPSG:4326 WGS 84

Private Const M_E As Float = 2.71828182845904523536  ' La base dei logaritmi naturali

Public Sub Main()

 Dim lon, lat, x, y As Float

 lon = (x / 20037508.34) * 180
 lat = ATan(M_E ^ ((y / 111319.490778) * Pi / 180.0)) * 360.0 / Pi - 90.0

laddove "lon" e "lat" sono le coordinate geografiche (Longitudine e Latitudine) nel sistema EPSG:4326 WGS 84 in formato decimale, mentre x e y sono le analoghe coordinate, ma del sistema EPSG:3857.