Guida rapida PROJ¶
PROJ è una funzione standard del filtro Unix che converte le coordinate geografiche di longitudine e latitudine in coordinate cartesiane (e viceversa), ed è un’API C per gli sviluppatori di software per includere la trasformazione delle coordinate nel loro software.
PROJ¶
Nota
Cosa imparerai? In questa sezione, imparerai ad usare lo strumento PROJ.
Che cosa è PROJ ?¶
PROJ e invproj eseguono rispettivamente la trasformazione verso e inversa di dati cartografici da o verso dati cartesiani con una vasta gamma di funzioni di proiezione selezionabili.
Sinossi proj¶
proj [ -bcCeEfiIlmorsStTvVwW [ args ] ] [ +args ] file[s]
invproj [ -bcCeEfiIlmorsStTwW [ args ] ] [ +args ] file[s]
Questi comandi sono completamente descritti nella documentazione diPROJ <https://proj.org/apps/proj.html>`_ per l’ultima versione.
Esempio PROJ¶
Il seguente script
proj +proj=utm +lon_0=112w +ellps=clrk66
-r <<EOF
45d15'33.1" 111.5W
45d15.551666667N -111d30
+45.25919444444 111d30'000w
EOF
eseguirà la proiezione verso UTM con un meridiano centrale UTM standard più vicino alla longitudine 112W. I valori geografici di questo esempio sono equivalenti e intesi come esempi di varie forme in ingresso DMS. I dati in uscita x-y appariranno come tre linee di:
460769.27 5011648.45
cs2cs¶
Nota
Cosa imparerai? In questa sezione, imparerai ad usare lo strumento cs2cs.
Che cosa è cs2cs ?¶
cs2cs
esegue la trasformazione tra il sistema di coordinate cartografiche di origine e di destinazione su un insieme di punti in ingresso. La trasformazione del sistema di coordinate può includere la traslazione tra coordinate proiettate e geografiche, nonché l’applicazione di spostamenti di dati.
Sinossi cs2cs¶
cs2cs [ -eEfIlrstvwW [ args ] ] [ +opts[=arg] ] [ +to [+opts[=arg]] ] file[s]
Questi comandi sono completamente descritti nella documentazione di cs2cs per l’ultima versione.
Esempio cs2cs¶
Il seguente script
cs2cs +proj=latlong +datum=NAD83
+to +proj=utm +zone=10 +datum=NAD27
-r <<EOF
45d15'33.1" 111.5W
45d15.551666667N -111d30
+45.25919444444 111d30'000w
EOF
trasformerà le coordinate geografiche NAD83 in ingresso in coordinate NAD27 nella proiezione UTM con la zona 10 selezionata. I valori geografici di questo esempio sono equivalenti e intesi come esempi di varie forme in ingresso DMS. I dati di uscita x-y appariranno come tre linee di:
1402285.99 5076292.42 0.000
geod¶
Nota
Cosa imparerai? In questa sezione, imparerai come usare lo strumento geod.
Che cosa è geod ?¶
geod
(diretto) e invgeod
(inverso) eseguono calcoli geodetici («Grande Cerchio») per determinare la latitudine, la longitudine e l’azimut posteriore di un punto terminale dato un punto iniziale di latitudine, longitudine, azimut e distanza (diretto) o gli azimut in avanti e indietro e la distanza tra le latitudini e longitudini di un punto iniziale e terminale (inverso). I risultati sono precisi fino all’arrotondamento per |f| < 1/50, dove f è l’appiattimento.
invgeod
potrebbe non essere disponibile su tutte le piattaforme; in questo caso chiamate geod con l’opzione -I.
Sinossi geod¶
geod +ellps=<ellipse> [ -afFIlptwW [ args ] ] [ +args ] file[s]
invgeod +ellps=<ellipse> [ -afFIlptwW [ args ] ] [ +args ] file[s]
Questi comandi sono completamente descritti nella documentazione diPROJ <https://proj.org/apps/proj.html>`_ per l’ultima versione.
Esempio geod¶
Il seguente script determina gli azimut geodetici e la distanza in miglia statutarie statunitensi da Boston, MA, a Portland, OR:
geod +ellps=clrk66 <<EOF -I +units=us-mi
42d15'N 71d07'W 45d31'N 123d41'W
EOF
che dà i risultati:
-66d31'50.141" 75d39'13.083" 2587.504
dove i primi due valori sono l’azimut da Boston a Portland, l’azimut posteriore da Portland a Boston seguito dalla distanza.
Un esempio di utilizzo della geodetica in avanti è quello di utilizzare la posizione di Boston e determinare la posizione di Portland tramite azimut e distanza:
geod +ellps=clrk66 <<EOF +units=us-mi
42d15'N 71d07'W -66d31'50.141" 2587.504
EOF
che dà:
45d31'0.003"N 123d40'59.985"W 75d39'13.094"
Nota
La mancanza di precisione nel valore della distanza compromette la precisione della posizione di Portland.