Trasformazione coordinate su Google Maps

31 10 2007

Per l’esame di Cartografia e Sistemi Informativi Territoriali (GIS) mi è capitato di realizzare un programmino che effettua la trasformazioni di coordinate dal sistema WGS84 al sistema UTM chiamato anche Gauss (coordinate geodetiche), compatibile con la cartografia ufficiale italiana IGM (Istituto Geografico Militare) in coordinate cartesiane (kilometriche). La trasformazione avviene per punti fissati oppure dinamicamente per il punto in cui viene posizionato il cursore in Google Maps.

Demo di trasformazione di coordinate

Google Maps Coords Converter


UPDATE:

Ho corretto un errore che ultimamente il programma di conversione dava, a causa di un cambiamente che Google ha fatto alle sue API.
Ora la conversione funziona correttamente, inoltre ho anche aggiunto la funzionalità per inserire manualmente delle coordinate. Grazie a Marco e Umberto per la segnalazione.

L’obiettivo di questo programma è quello di costruire un sistema di trasformazione delle coordinate che funzioni su un qualsiasi browser di qualsiasi sistema operativo.
La parte innovativa e interessante è l’integrazione con le Google Maps, uno dei sistemi interattivi per la navigazione nelle mappe del mondo più in voga in questi tempi. Il vantaggio nell’utilizzo delle Google Maps sta nell’avere a disposizione un sistema già pronto per la visualizzazione delle mappe con le seguenti caratteristiche:

  • visualizzazione delle mappe stradali, satellitari e ibride
  • 20 livelli di zoom (accessibili anche tramite la rotella del mouse)
  • vasta disponibilità di API (funzioni di libreria) con cui poter interagire
  • possibilità di fissare marcatori e layer aggiuntivi sulla mappa
  • costante aggiornamento delle funzionalità da parte di Google
  • portabilità: funziona in tutti i sistemi operativi con quasi tutti i browser moderni
  • efficienza: il sistema di visualizzazione è veloce e le mappe vengono scaricate solo per le zone effettivamente visualizzate

Le funzionalità che si vogliono implementare sono due:

  1. Conversione delle coordinate di punti prefissati (latitudine, longitudine, altitudine) con visualizzazione delle coordinate tramite un marcatore nelle Google Maps.
  2. Possibilità di poter spostare il marcatore trascinandolo con il mouse con rilevamente delle coordinate e conversione delle stesse in automatico.

Browser supportati:

  • Microsoft Internet Explorer 6, 7
  • Mozilla Firefox 1.5, 2.0
  • Safari

Dispositivi hardware supportato:

  • Personal Computer con qualsiasi sistema operativo
  • PDA, cellulare e altri dispositivi provvisti delle funzionalità per navigare in internet avanzate

Bisogna inoltre ricordare che le nuove tecnologie hanno portato questi browser all’interno di numerosi dispositivi portatili (PDA, cellulari, ecc), pertanto la maggior parte di questi dispositivi che sono in grado di navigare in internet dovrebbero essere in grado di eseguire il programma della conversione.

Javascript è un linguaggio interpretato, pertanto non permette il raggiungimento delle prestazioni ottimali della macchina, tuttavia la velocità di esecuzione in questo caso è completamente soddisfacente, e permette un utilizzo completo in real-time.

Risorse:


Actions

Informations

7 responses to “Trasformazione coordinate su Google Maps”

10 02 2008
Beware of the Yellow Pecora » Blog Archive » GMaps GIS (12:47:20) :

[…] Il sistema si basa su un progetto di Lorenzo Dal Col. « Riconoscimento vocale su architettura client-server WinSCP, un ottimo client FTP / SFTP » […]

11 02 2008
Power (11:48:48) :

VI denuncio tutti per plagio. LMAO!

11 02 2008
Lorenzo Dal Col (15:35:58) :

Ringraziamo PowerBallTabs, dal cui progetto abbiamo preso qualche spunto… :P

12 04 2008
Emme (04:24:55) :

Molto interessante.
Ma se si volesse implementare il tutto su Gauss-Boaga Roma40 (MonteMario)?

12 04 2008
Lorenzo Dal Col (14:30:54) :

Sarebbe sufficiente cambiare l’orientamento dell’ellissoide finale di riferimento.
Se hai dimestichezza con javascript puoi scaricare tutto il progetto (gratuitamente). Nel file RotationElipsoid.js alla fine del file bisogna decommentare le righe:


var WGS84_Hayford = new RotationElipsoid(6378137.0,0.00669437999, new Orientation(0,0,0));
var ITA40 = new RotationElipsoid(6378388,0.00672267002, new Orientation(-104.1,-49.1,-9.9,-11.68,0.971,-2.917,0.714));
var ED50 = new RotationElipsoid(6378388,0.00672267002, new Orientation(-87,-98,-121));

Abilitando quindi l’ellissoide ITA40 (Monte Mario).

Poi nel file che chiama le conversioni (generic.js) sostituire tutti i riferimenti della variabile ED50 con ITA40.

Se non hai dimestichezza con il codice posso fare io la versione ITA40, ma devi attendere un paio di settimane perchè sono strapieno di impegni. :D

14 04 2008
Emme (06:45:37) :

Grazie mille, vedrò di arrangiarmi.

17 04 2008
berlusca (21:09:00) :

rambo smettila di copiare …sei un ingegnere fasullo..lo diremo alla cefalo..le mandiamo una mail con il link..tagliati i capelli..ti osserviamo..

Leave a comment

You can use these tags : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>