NAME¶
GeodesicProj -- perform projections based on geodesics
SYNOPSIS¶
GeodesicProj (
-z |
-c |
-g )
lat0
lon0 [
-r ] [
-e a f ] [
--comment-delimiter commentdelim ] [
--version |
-h |
--help ] [
--input-file infile |
--input-string instring ] [
--line-separator
linesep ] [
--output-file outfile ]
DESCRIPTION¶
Perform projections based on geodesics. Convert geodetic coordinates to either
azimuthal equidistant, Cassini-Soldner, or gnomonic coordinates. The center of
the projection (
lat0,
lon0) is specified by either the
-c option (for Cassini-Soldner), the
-z option (for azimuthal
equidistant), or the
-g option (for gnomonic). At least one of these
options must be given (the last one given is used).
Geodetic coordinates are provided on standard input as a set of lines containing
(blank separated)
latitude and
longitude (decimal degrees or
degrees, minutes, seconds). For each set of geodetic coordinates, the
corresponding projected coordinates
x,
y (meters) are printed on
standard output together with the azimuth
azi (degrees) and reciprocal
scale
rk. For Cassini-Soldner,
azi is the bearing of the easting
direction and the scale in the easting direction is 1 and the scale in the
northing direction is 1/
rk. For azimuthal equidistant and gnomonic,
azi is the bearing of the radial direction and the scale in the
azimuthal direction is 1/
rk. For azimuthal equidistant and gnomonic,
the scales in the radial direction are 1 and 1/
rk^2, respectively.
OPTIONS¶
- -z
- use the azimuthal equidistant projection centered at
latitude = lat0, longitude = lon0.
- -c
- use the Cassini-Soldner projection centered at latitude =
lat0, longitude = lon0.
- -g
- use the ellipsoidal gnomonic projection centered at
latitude = lat0, longitude = lon0.
- -r
- perform the reverse projection. x and y are
given on standard input and each line of standard output gives
latitude, longitude, azi, and rk.
- -e
- specify the ellipsoid via a f; the equatorial
radius is a and the flattening is f. Setting f = 0
results in a sphere. Specify f < 0 for a prolate ellipsoid. A
simple fraction, e.g., 1/297, is allowed for f. (Also, if f
> 1, the flattening is set to 1/ f.) By default, the WGS84
ellipsoid is used, a = 6378137 m, f = 1/298.257223563.
- --comment-delimiter
- set the comment delimiter to commentdelim (e.g.,
"#" or "//"). If set, the input lines will be scanned
for this delimiter and, if found, the delimiter and the rest of the line
will be removed prior to processing and subsequently appended to the
output line (separated by a space).
- --version
- print version and exit.
- -h
- print usage and exit.
- --help
- print full documentation and exit.
- --input-file
- read input from the file infile instead of from
standard input; a file name of "-" stands for standard
input.
- --input-string
- read input from the string instring instead of from
standard input. All occurrences of the line separator character (default
is a semicolon) in instring are converted to newlines before the
reading begins.
- --line-separator
- set the line separator character to linesep. By
default this is a semicolon.
- --output-file
- write output to the file outfile instead of to
standard output; a file name of "-" stands for standard
output.
EXAMPLES¶
echo 48.648 -2.007 | GeodesicProj -c 48.836 2.337
=> -319919 -11791 86.7 0.999
echo -319919 -11791 | GeodesicProj -c 48.836 2.337 -r
=> 48.648 -2.007 86.7 0.999
ERRORS¶
An illegal line of input will print an error message to standard output
beginning with "ERROR:" and causes
GeodesicProj to return an
exit code of 1. However, an error does not cause
GeodesicProj to
terminate; following lines will be converted.
SEE ALSO¶
The ellipsoidal gnomonic projection is derived in Section 13 of C. F. F. Karney,
Geodesics on an ellipsoid of revolution, Feb. 2011; preprint
<
http://arxiv.org/abs/1102.1215>. See also Section 8 of C. F. F. Karney,
Algorithms for geodesics, Sept. 2011; preprint
<
http://arxiv.org/abs/1109.4448>.
AUTHOR¶
GeodesicProj was written by Charles Karney.
HISTORY¶
GeodesicProj was added to GeographicLib,
<
http://geographiclib.sf.net>, in 2009-08. Prior to version 1.9 it was
called EquidistantTest.