project logo OSGeo Community Project

Démarrage rapide avec Proj.4

Proj.4 est une fonction filtre standard d’Unix qui converti les coordonnées géographiques de latitude et longitude entre coordonnées cartesienne (et vice versa), et est une API C pour les développeurs de logiciels permettant d’y inclure des transformations de coordonnées.

Ce guide de démarrage rapide reprend les fonctions suivantes :

proj

Note

Que vais-je apprendre ? Dans cette section, vous apprendrez à vous servir de l’outil proj.

Qu’est-ce que proj ?

Proj et invproj effectuent respectivement une transformation des données cartographique et son inverse depuis ou vers des données cartésiennes au travers d’un large panel de projections.

Résumé de proj

proj [ -bcCeEfiIlmorsStTvVwW [ args ] ] [ +args ] file[s]
invproj [ -bcCeEfiIlmorsStTwW [ args ] ] [ +args ] file[s]

Ces commandes sont complètement décrites dans leur dernière version dans proj documentation.

Exemple de proj

Le script qui suit

proj +proj=utm  +lon_0=112w  +ellps=clrk66
-r <<EOF
45d15'33.1"   111.5W
45d15.551666667N   -111d30
+45.25919444444    111d30'000w
EOF

va effectuer une projection UTM avec un médidien standard central de longitude 112W. Les coordonnées géographiques de cet exemple sont équivalentes et utilisées comme exemple des nombreuses formes d’entrées de coordonnées. Les données x-y de sortie vont apparaître sous la forme de 3 fois la ligne:

460769.27     5011648.45

cs2cs

Note

Que vais-je apprendre ? Dans cette section, vous allez apprendre à utiliser l’outil cs2cs.

Qu’est ce que cs2cs ?

cs2cs effectue des transformations d’un système de coordonnées géographique source à un système destination sur un ensemble de points. La transformation de système de coordonnées peut inclure des translations entre des coordonnées géographiques ou projetées autant qu’appliquer des translations de systèmes de référence (datums).

Résumé de cs2cs

cs2cs [ -eEfIlrstvwW [ args ] ] [ +opts[=arg] ] [ +to [+opts[=arg]] ] file[s]

La dernière version de cette commande est complètement décrite dans cs2cs documentation.

Exemple de cs2cs

Le script suivant

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

va transformer les coordonnées géographiques NAD83 en entrée en coordonnées NAD27 dans la zone 10 de la projection UTM. Les coordonnées géographiques de cet exemple sont équivalentes et utilisées comme exemple des nombreuses formes d’entrée de coordonnées. Les données x-y en sortie vont apparaître 3 fois sous la forme:

1402285.99      5076292.42 0.000

geod

Note

Que vais-je apprendre ? Dans cette section, vous allez apprendre à utiliser l’outil geod.

Qu’est-ce que geod ?

geod (direct) et invgeod (inverse) effectuent des calculs geodesiques (“Grand cercle”) pour déterminer la latitude, longitude et azimuth d’un point cible à partir d’un point initial formé d’une latitude, longitude, azimuth et distance (sens direct) ou pour déterminer les azimuths avant et arrière et la distance entre les latitudes et longitudes d’un point initial et final (sens inverse). Les résultats sont arrondis tel que |f| < 1/50, où f est l’aplanissement.

invgeod n’est pas nécessairement disponible sur toutes les plateformes; dans ce cas, il est possible d’appeler geod avec l’option -I.

Résumé de geod

geod +ellps=<ellipse> [ -afFIlptwW [ args ] ] [ +args ] file[s]

invgeod +ellps=<ellipse> [ -afFIlptwW [ args  ]  ]  [  +args  ] file[s]

La dernière version de ces commandes sont complètement décrites dans proj documentation.

Exemple de geod

Le script suivant détermine les azimuths géodésiques et la distance en miles U.S. de Boston, MA, à Portland, OR:

geod +ellps=clrk66 <<EOF -I +units=us-mi
42d15'N 71d07'W 45d31'N 123d41'W
EOF

ce qui donne comme résultats:

-66d31'50.141" 75d39'13.083" 2587.504

où les deux premières valeurs sont l’azimuth de Boston à Portland et l’azimuth arrière de Portland à Boston suivis de la distance.

Un exemple d’usage de géodésique avant est d’utiliser la position à Boston et de déterminer la position à Portland par son azimuth et sa distance:

geod +ellps=clrk66 <<EOF +units=us-mi
42d15'N 71d07'W -66d31'50.141" 2587.504
EOF

ce qui donne:

45d31'0.003"N 123d40'59.985"W 75d39'13.094"

Note

lack of precision in the distance value compromises the precision of the Portland location.