PROJ.4
This page was transwikied from another project and needs to be bookified. This page either needs to be altered to become the main page of a book, or altered to fit the "local manual of style" of the book it is to be included in. Please remove {{bookify}} after the page is bookified. |
Datum[edit | edit source]
You can use the +nadgrids-Parameter to select an existing gridfile or define your own datum with the +towgs84 Parameter to use a 3- or 7-Parameter Transformation. To use the buildin "datums" (or dati?) you can use the +datum-Parameter and select one of the DatumCode in the following list from pj_datums.c (e.g. +datum=NAD27).
DatumCode | DatumName | SpheroidCode | DatumDefinition |
carthage | Carthage 1934 Tunisia | clrk80 | towgs84=-263.0,6.0,431.0 |
GGRS87 | Greek_Geodetic_Reference_System_1987 | GRS80 | towgs84=-199.87,74.79,246.62 |
hermannskogel | Hermannskogel | bessel | towgs84=653.0,-212.0,449.0 |
ire65 | Ireland 1965 | mod_airy | towgs84=482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15 |
NAD27 | North_American_Datum_1927 | clrk66 | nadgrids=@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat |
NAD83 | North_American_Datum_1983 | GRS80 | towgs84=0,0,0 |
nzgd49 | New Zealand Geodetic Datum 1949 | intl | towgs84=59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993 |
OSGB36 | Airy 1830 | airy | towgs84=446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894 |
potsdam | Potsdam Rauenberg 1950 DHDN | bessel | towgs84=598.1,73.7,418.2,0.202,0.045,-2.455,6.7 |
WGS84 | WGS84 | towgs84=0,0,0 |
Prime Meridian[edit | edit source]
To define a Primemeridian for your Projection, you can use the +pm-Parameter with a numeric value (e.g. +pm=5) or use one of the cities in the PrimeMeridianCode column (e.g. +pm=madrid) from the table below - extracted from pj_datums.c
PrimeMeridianCode | PrimeMeridianDefinition | D | M | S | Hemi |
athens | 23d42'58.815 E | 23 | 42 | 58.815 | E |
bern | 7d26'22.5 E | 7 | 26 | 22.5 | E |
bogota | 74d04'51.3 W | 74 | 04 | 51.3 | W |
brussels | 4d22'4.71 E | 4 | 22 | 4.71 | E |
ferro | 17d40'W | 17 | 40 | 0 | W |
greenwich | 0dE | 0 | 0 | 0 | E |
jakarta | 106d48'27.79 E | 106 | 48 | 27.79 | E |
lisbon | 9d07'54.862 W | 9 | 07 | 54.862 | W |
madrid | 3d41'16.58 W | 3 | 41 | 16.58 | W |
oslo | 10d43'22.5 E | 10 | 43 | 22.5 | E |
paris | 2d20'14.025 E | 2 | 20 | 14.025 | E |
rome | 12d27'8.4 E | 12 | 27 | 8.4 | E |
stockholm | 18d3'29.8 E | 18 | 3 | 29.8 | E |
Spheroid[edit | edit source]
To define a Spheroid (Ellipsoid or Sphere) for your Projection, you can use the +a-, +es-, +e-, +f-, +b- and +rf-Parameters (see Table below), or you can use the +ellps-Parameter (e.g. +ellps=clrk66) with one of the predefined SpheroidCodes from the following table - extracted from pj_ellps.c.
SpheroidCode | EquatorialAxis | PolarAxis | ReciprocFlattening | SpheroidName |
airy | 6377563.396 | 6356256.91 | Airy 1830 | |
andrae | 6377104.43 | 300 | Andrae 1876 (Den., Iclnd.) | |
APL4.9 | 6378137 | 298.25 | Appl. Physics. 1965 | |
aust_SA | 6378160 | 298.25 | Australian Natl & S. Amer. 1969 | |
bessnam | 6377483.865 | 299.1528128 | Bessel 1841 (Namibia) | |
bessel | 6377397.155 | 299.1528128 | Bessel 1841 | |
clrk66 | 6378206.4 | 6356583.8 | Clarke 1866 | |
clrk80 | 6378249.145 | 293.4663 | Clarke 1880 mod. | |
CPM | 6375738.7 | 334.29 | Comm. des Poids et Mesures 1799 | |
delmbr | 6376428 | 311.5 | Delambre 1810 (Belgium) | |
engelis | 6378136.05 | 298.2566 | Engelis 1985 | |
evrst30 | 6377276.345 | 300.8017 | Everest 1830 | |
evrst48 | 6377304.063 | 300.8017 | Everest 1948 | |
evrst56 | 6377301.243 | 300.8017 | Everest 1956 | |
evrst69 | 6377295.664 | 300.8017 | Everest 1969 | |
evrstSS | 6377298.556 | 300.8017 | Everest (Sabah & Sarawak) | |
fschr60 | 6378166 | 298.3 | Fischer (Mercury Datum) 1960 | |
fschr60m | 6378155 | 298.3 | Modified Fischer 1960 | |
fschr68 | 6378150 | 298.3 | Fischer 1968 | |
GRS67 | 6378160 | 298.247167427 | GRS 67(IUGG 1967) | |
GRS80 | 6378137 | 298.257222101 | GRS 1980(IUGG, 1980) | |
helmert | 6378200 | 298.3 | Helmert 1906 | |
hough | 6378270 | 297 | Hough | |
IAU76 | 6378140 | 298.257 | IAU 1976 | |
intl | 6378388 | 297 | International 1909 (Hayford) | |
kaula | 6378163 | 298.24 | Kaula 1961 | |
krass | 6378245 | 298.3 | Krassovsky, 1942 | |
lerch | 6378139 | 298.257 | Lerch 1979 | |
MERIT | 6378137 | 298.257 | MERIT 1983 | |
modairy | 6377340.189 | 6356034.446 | Modified Airy | |
mprts | 6397300 | 191 | Maupertius 1738 | |
newintl | 6378157.5 | 6356772.2 | New International 1967 | |
NWL9D | 6378145 | 298.25 | Naval Weapons Lab., 1965 | |
plessis | 6376523 | 6355863 | Plessis 1817 (France) | |
SEasia | 6378155 | 6356773.3205 | Southeast Asia | |
SGS85 | 6378136 | 298.257 | Soviet Geodetic System 85 | |
sphere | 6370997 | 6370997 | Normal Sphere (r=6370997) | |
walbeck | 6376896 | 6355834.8467 | Walbeck | |
WGS60 | 6378165 | 298.3 | WGS 60 | |
WGS66 | 6378145 | 298.25 | WGS 66 | |
WGS72 | 6378135 | 298.26 | WGS 72 | |
WGS84 | 6378137 | 298.257223563 | WGS 84 |
Units[edit | edit source]
If you don't set Units, the default is 'm'=Meter. If you want to define other Units for your Projection with the +units- or the +vunits-Parameter, you MUST use one of the UnitCode from the following table - extracted from pj_units.c. But you can overwrite the internal calculation, when you define your own Multiplier to convert map units to 1.0m with the +to_meter- and +vto_meter-Parameter (e.g. to_meter=1.1).
UnitCode | ToMeter | UnitName | Note |
ch | 20.1168 | International Chain | |
cm | 0.01 | Centimeter | |
dm | 0.1 | Decimeter | |
fath | 1.8288 | International Fathom | |
ft | 0.3048 | International Foot | |
in | 0.0254 | International Inch | |
ind-ch | 20.11669506 | Indian Chain | |
ind-ft | 0.30479841 | Indian Foot | |
ind-yd | 0.91439523 | Indian Yard | |
km | 1000 | Kilometer | |
kmi | 1852 | International Nautical Mile | |
link | 0.201168 | International Link | |
m | 1 | Meter | |
mi | 1609.344 | International Statute Mile | |
mm | 0.001 | Millimeter | |
us-ch | 20.1168402336805 | U.S. Surveyor's Chain | |
us-ft | 0.304800609601219 | U.S. Surveyor's Foot | |
us-in | 0.0254000508001016 | U.S. Surveyor's Inch | 1/39.37 |
us-mi | 1609.34721869444 | U.S. Surveyor's Statute Mile | |
us-yd | 0.914401828803658 | U.S. Surveyor's Yard | |
yd | 0.9144 | International Yard |
Errors[edit | edit source]
If no Error occures, the global int variable 'pj_errno' is set to 0. If trapped errors occures, the value should be one of the ErrNum in the following table - extracted from pj_strerrno.c. All definded Errors are negative to not overlap with C-[Runtime]-Errors. But not all input is checked in all Projections and no try-catch is performed. So calculate with overflows, Infs and NaNs.
If Error occures during Projection, sometimes an error is set, but often the returned Coordinates are set to HUGE_VAL (e.g. PJ_lsat.c, PJ_mod_ster.c). So check your returned Coordinates for HUGE_VAL. HUGE_VAL is a valid double value (NOT NotANumer NaN). HUGE_VAL is defined in math.h and exported from crt as _HUGE = Positive infinity = 1,#INF. If you can not direct access or define HUGE_VAL, then use DBL_MAX defined in float.h as '#define DBL_MAX 1.7976931348623158e+308' and check, if the returned Coordinates are below (e.g. fabs(x) < DBL_MAX).
ErrNum | ErrDesciption | SinceVer |
-1 | no arguments in initialization list | 4.3.3 |
-2 | no options found in 'init' file | 4.3.3 |
-3 | no colon in init= string | 4.3.3 |
-4 | projection not named | 4.3.3 |
-5 | unknown projection id | 4.3.3 |
-6 | effective eccentricity = 1. | 4.3.3 |
-7 | unknown unit conversion id | 4.3.3 |
-8 | invalid boolean param argument | 4.3.3 |
-9 | unknown elliptical parameter name | 4.3.3 |
-10 | reciprocal flattening (1/f) = 0 | 4.3.3 |
-11 | |radius reference latitude| > 90 | 4.3.3 |
-12 | squared eccentricity < 0 | 4.3.3 |
-13 | major axis or radius = 0 or not given | 4.3.3 |
-14 | latitude or longitude exceeded limits | 4.3.3 |
-15 | invalid x or y | 4.3.3 |
-16 | improperly formed DMS value | 4.3.3 |
-17 | non-convergent inverse meridional dist | 4.3.3 |
-18 | non-convergent inverse phi2 | 4.3.3 |
-19 | acos/asin: |arg| >1.+1e-14 | 4.3.3 |
-20 | tolerance condition error | 4.3.3 |
-21 | conic lat_1 = -lat_2 | 4.3.3 |
-22 | lat_1 >= 90 | 4.3.3 |
-23 | lat_1 = 0 | 4.3.3 |
-24 | lat_ts >= 90 | 4.3.3 |
-25 | no distance between control points | 4.3.3 |
-26 | projection not selected to be rotated | 4.3.3 |
-27 | W <= 0 or M <= 0 | 4.3.3 |
-28 | last not in 1-5 range | 4.3.3 |
-29 | path not in range | 4.3.3 |
-30 | h <= 0 | 4.3.3 |
-31 | k <= 0 | 4.3.3 |
-32 | lat_0 = 0 or 90 or alpha = 90 | 4.3.3 |
-33 | lat_1=lat_2 or lat_1=0 or lat_2=90 | 4.3.3 |
-34 | elliptical usage required | 4.3.3 |
-35 | invalid UTM zone number | 4.3.3 |
-36 | arg(s) out of range for Tcheby eval | 4.3.3 |
-37 | failed to find projection to be rotated | 4.3.3 |
-38 | failed to load datum shift file | 4.3.3 |
-39 | both n & m must be spec'd and > 0 | 4.3.3 |
-40 | n <= 0, n > 1 or not specified | 4.3.3 |
-41 | lat_1 or lat_2 not specified | 4.3.3 |
-42 | |lat_1| == |lat_2| | 4.3.3 |
-43 | lat_0 is pi/2 from mean lat | 4.3.3 |
-44 | unparseable coordinate system definition | 4.4.3 |
-45 | geocentric transformation missing z or ellps | 4.4.8 |
-46 | unknown prime meridian conversion id | 4.4.9 |
-47 | illegal axis orientation combination | 4.7.1 |
-48 | point not within available datum shift grids | 4.7.1 |
-49 | invalid sweep axis, choose x or y | 4.8.0 |
Parameters[edit | edit source]
The Projection is initialised with the functions pj_init(), pj_init_ctx(), pj_init_plus() or pj_init_plus_ctx(). These function can handle up to 200 Parameters defining (or NOT) the Projection.
All Parameters are case sensitive (C-Style). So if you want to store all Parameters in a Database-Table as Primary-Key, use a DataType of varchar which is case sensitive (in MsSQL use: 'Create Table tbl_Params(ParamName Varchar(50) Not Null Collate Latin1_General_Bin Primary Key)' ; in MsAccess/Jet4 use DataDefinition-Query with SQL 'Create Table tbl_Params(ParamName Varbinary(100) Not Null Primary Key)').
There is no central *.pdf-, *.doc-, *.ini-, *.def-, *.c. or *.h-File describing all Parameters. You can find the description of some Parameters in 'General Parameters' (http://trac.osgeo.org/proj/wiki/GenParms, and http://proj.maptools.org/gen_parms.html). But the most developer of the Package (a lot), use the build in function pj_param() to query their Parameters. The following List is just an extraction of all sourcefiles (Version 4.33++) where the pj_param() is used. The Parameters Flagged with CheckedOnInit=1 should be save, because they are evaluated by the init-functions (pj_init(), pj_init_ctx(), pj_init_plus() or pj_init_plus_ctx()) and everyone depends on it. All others Parameters could have a Multi-DataType-Multi-Meaning depending on the Projection which is initialised with the +proj-Parameter. For example: +xx=20001231 could be a date, string, long or double in different Projections (see +n- and +south-Paramter below). You even can use your own Parameters like +title=xxx to query it in some derived Softwarepackages.
Every developer can use his/her own style, Datatype and NamingConvention to create Parameters and Variables for his/her Projection Implementation. That is a problem, but maybe the reason for the great success of this Library.
Param | CheckedOnInit | Usage | Samples | ArgDescription | UsedInFiles |
A | 0 | 18 | only called from geod.c | geod_set.c | |
a | 1 | 58 | +a=6378137 | EquatorialRadius ; Semimajor radius of the ellipsoid axis; BUG: No Difference between WGS84 and GRS80 Elli | pj_ell_set.c, pj_init.c, pj_utils.c |
alpha | 0 | 90 | +alpha=-36d52'11.6315 | double ; Azimuth of initial line ; Used with Oblique Mercator and others | PJ_ocea.c, PJ_omerc.c, PJ_urm5.c |
aperture | 0 | 16 | +aperture=3 | PJ_isea.c | |
axis | 1 | 10 | +axis=enu | input coordinate axis orientation ; 3 chars default "enu" (easting, northing, up); e: x=x ; w: x=-x ; n:y=y ; s:y=-y ; u:z=z ; s:z=-z ; see pj_adjust_axis() ; chars in "ewnsud" (East West North South Up Down) ; todo check for Bugs with "uuu"; valid shoul | pj_init.c |
azi | 0 | 44 | +azi=18d54' | PJ_isea.c, PJ_labrd.c, PJ_nsper.c | |
b | 1 | 76 | +b=6378137 | PolarRadius ; Semiminor radius of the ellipsoid axis ; Sets es = 1 - (b * b) / (a * a) | pj_ell_set.c, pj_init.c, pj_utils.c |
belgium | 0 | 0 | |||
beta | 0 | 0 | +beta=45d | ||
catalog | 1 | 3 | grid catalog parameter, and optional date | pj_datum_set.c | |
czech | 0 | 16 | +czech=1 | bool Negate xy signs | PJ_krovak.c |
date | 1 | 3 | +date=2000-12-31 | date of grid catalog in format "yyyy.fraction" or "yyyy-mm-dd" | pj_datum_set.c |
datum | 1 | 62 | +datum=NAD27 | Datum name (see proj -ld) ; default PJD_UNKNOWN ; must be in list else err -9: unknown elliptical parameter name | pj_datum_set.c, pj_init.c, pj_utils.c |
del_A | 0 | 18 | only called from geod.c | geod_set.c | |
del_S | 0 | 18 | only called from geod.c | geod_set.c | |
e | 1 | 36 | +e=0 | Eccentricity of the ellipsoid = sqrt(1 - b^2/a^2) = sqrt( f*(2-f) ) ; es = e * e; precedes rf, f, b | pj_ell_set.c |
ellps | 1 | 58 | +ellps=clrk66 | Ellipsoid name (see proj -le) | pj_ell_set.c, pj_init.c, pj_utils.c |
es | 1 | 66 | +es=.006768657997291094 | Eccentricity of the ellipsoid squared ; precedes e, rf, f, b; must be >0 | pj_ell_set.c, pj_utils.c |
f | 1 | 76 | +f=0 | Flattening of the ellipsoid (often presented as an inverse, e.g. 1/298) ; Sets es = f * (2 - f) ; precedes b | pj_ell_set.c, pj_init.c, pj_utils.c |
gamma | 0 | 10 | +gamma=5.5 | double | PJ_omerc.c |
geoc | 1 | 18 | +geoc=1 | Geographic coordinates are to be treated as geocentric (geocentric Latitude?) | pj_init.c |
geoidgrids | 1 | 9 | vertical datum geoid grids | pj_init.c | |
guam | 0 | 18 | +guam=1 | use Guam elliptical | PJ_aeqd.c |
h | 0 | 27 | +h=36000000 | Satellite Height | PJ_geos.c, PJ_nsper.c |
h_0 | 0 | 2 | +h_0=1.0 | PJ_sch.c | |
init | 1 | 36 | +init=epsg:26711 | +init=<Filename in \nad\>:26711 ; file/key pair; does not override existing parameter value, if datum, ellps or any earth model information is set | pj_init.c |
inv | 0 | 0 | The presence of this option selects the inverse projection mode of operation. It is equivalent to executing program invproj. | ||
K | 0 | 0 | |||
k | 1 | 48 | +k=1.0 | Scale factor at natural origin (old name) ; must be >0 ; default 1 | pj_init.c, PJ_krovak.c |
k_0 | 1 | 36 | +k_0=0.9996 | Scale factor at natural origin (new name) first checked ; must be >0 ; Precedes k ; default 1 | pj_init.c |
lat_0 | 1 | 86 | +lat_0=0 | Latitude of origin | PJ_aeqd.c, pj_init.c, PJ_isea.c, PJ_krovak.c, PJ_lcc.c, PJ_lcca.c |
lat_1 | 0 | 342 | +lat_1=50 | Latitude of first standard parallel | geod_set.c, PJ_aea.c, PJ_aitoff.c, PJ_bonne.c, PJ_eqdc.c, PJ_imw_p.c, PJ_lagrng.c, PJ_lcc.c, PJ_loxim.c, PJ_ocea.c, PJ_omerc.c, PJ_sconics.c, PJ_tpeqd.c, PJ_wink2.c |
lat_2 | 0 | 234 | +lat_2=60 | Latitude of second standard parallel | geod_set.c, PJ_aea.c, PJ_eqdc.c, PJ_imw_p.c, PJ_lcc.c, PJ_ocea.c, PJ_omerc.c, PJ_sconics.c, PJ_tpeqd.c |
lat_b | 0 | 18 | +lat_b=60.0 | PJ_airy.c | |
lat_t | 0 | 0 | |||
lat_ts | 0 | 192 | +lat_ts=33 | Standard Parallel ; Latitude of true scale | PJ_cea.c, PJ_eqc.c, PJ_krovak.c, PJ_merc.c, PJ_rpoly.c, PJ_stere.c, PJ_wag3.c, PJ_wink1.c |
lon_0 | 1 | 38 | +lon_0=0 | Central meridian ; Longitude of false origin | pj_init.c, PJ_isea.c, PJ_krovak.c |
lon_1 | 0 | 108 | +lon_1=50 | geod_set.c, PJ_imw_p.c, PJ_ocea.c, PJ_omerc.c, PJ_tpeqd.c | |
lon_2 | 0 | 72 | +lon_2=50 | geod_set.c, PJ_ocea.c, PJ_omerc.c, PJ_tpeqd.c | |
lon_wrap | 1 | 23 | +lon_wrap=90.88 | longitude center for wrapping | pj_init.c |
lonc | 0 | 36 | +lonc=-133d40 | Longitude of projection center ; used with Oblique Mercator and possibly a few others | PJ_ocea.c, PJ_omerc.c |
lsat | 0 | 18 | +lsat=5 | int LandSat-Number ; see err -28: lsat not in 1-5 range | PJ_lsat.c |
m | 0 | 36 | +n=0.5 | double | PJ_gn_sinu.c, PJ_oea.c |
M | 0 | 36 | +M=1 | double see err -27 | PJ_hammer.c |
mode | 0 | 4 | +mode=plane or +mode=di or +mode=dd or +mode=hex | PJ_isea.c | |
n | 0 | 126 | +n=0.5 | double; in Foucaut Sinusoidal: 0 < n < 1 ; | PJ_fouc_s.c, PJ_gn_sinu.c, PJ_oea.c, PJ_urm5.c, PJ_urmfps.c |
n_A | 0 | 18 | only called from geod.c | geod_set.c | |
n_S | 0 | 18 | only called from geod.c | geod_set.c | |
nadgrids | 1 | 105 | +nadgrids=conus,ntv1_can.dat ; nadgrids=@null ; nadgrids=ntv1_can.dat | Grid Based Datum Adjustments ; Filename of NTv2 grid file to use for datum transforms | pj_apply_gridshift.c, pj_datum_set.c, pj_transform.c, pj_utils.c |
no_cut | 0 | 18 | +no_cut=1 | do not cut at hemisphere limit | PJ_airy.c |
no_defs | 1 | 18 | +no_defs | Does NOT set defaults from \nad\proj_def.dat ; Todo check no_defs "<>" | pj_init.c |
no_off | 0 | 7 | +no_off=0 | int no_off = 0 | PJ_omerc.c |
no_rot | 0 | 36 | +no_rot=1 | bool int no_rot | PJ_labrd.c, PJ_omerc.c |
no_uoff | 0 | 19 | +no_uoff=1 | PJ_omerc.c | |
north_square | 0 | 3 | +north_square=1 | int north_square in(0 to 3) ; since Version 4.9.0 | PJ_healpix.c |
npole | 0 | 1 | +npole=1 | only version 4.8.0: now north_square | PJ_healpix.c |
ns | 0 | 18 | +ns=1 | bool, no skew | PJ_bipc.c |
o_alpha | 0 | 36 | +o_alpha=1.0 | PJ_ob_tran.c | |
o_lat_1 | 0 | 18 | +o_lat_1=2.0 | PJ_ob_tran.c | |
o_lat_2 | 0 | 18 | +o_lat_2=3.0 | PJ_ob_tran.c | |
o_lat_c | 0 | 18 | +o_lat_c=4.0 | PJ_ob_tran.c | |
o_lat_p | 0 | 36 | +o_lat_p=45.0 | PJ_ob_tran.c | |
o_lon_1 | 0 | 18 | +o_lon_1=5.0 | PJ_ob_tran.c | |
o_lon_2 | 0 | 18 | +o_lon_2=6.0 | PJ_ob_tran.c | |
o_lon_c | 0 | 18 | +o_lon_c=7.0 | PJ_ob_tran.c | |
o_lon_p | 0 | 18 | +o_lon_p=-90.0 | PJ_ob_tran.c | |
o_proj | 0 | 18 | +o_proj=moll | name of projection to be translated ; must be in List else err -37: failed to find projection to be rotated | PJ_ob_tran.c |
orient | 0 | 4 | +orient=isea or +orient=pole | in ("isea", "pole") | PJ_isea.c |
over | 1 | 18 | +over=1 | over-ranging flag: Inhibit reduction of longitude range to within ±180° of the central meridian. | pj_init.c |
p | 0 | 0 | |||
path | 0 | 18 | +path=1 | int LandSat-Path-Number(Swat) ; if lsat 1-3: 1 to 251 else 1 to 233 | PJ_lsat.c |
phdg_0 | 0 | 2 | +phdg_0=1.0 | PJ_sch.c | |
plat_0 | 0 | 2 | +plat_0=1.0 | PJ_sch.c | |
plon_0 | 0 | 2 | +plon_0=1.0 | PJ_sch.c | |
pm | 0 | 36 | +pm=madrid ; pm=5 | Prime Meridian ; Alternate prime meridian (typically a city name) ; Symbolic name, or the longitude of the alternative prime meridian relative to greenwich ; default greenwich | pj_init.c, pj_utils.c |
proj | 1 | 18 | +proj=merc | Projection name (see proj -l) ; mandantory, else error -4: projection not named ; must be in list else: error -5 unknown projection id | pj_init.c |
q | 0 | 18 | +q=1 | double q | PJ_urm5.c |
R | 1 | 66 | +R=6000000 | Semimajor radius a; R takes precedence over a | pj_ell_set.c, pj_utils.c |
R_A | 1 | 33 | +R_A=1 | turn ellipsoid into equivalent sphere by setting es = 0 and a to Authalic-Sphere / same Area ; Precedes R_V, R_a, R_g, R_h, R_lat_a, R_lat_g | pj_ell_set.c, pj_utils.c |
R_a | 1 | 33 | +R_a=1 | turn ellipsoid into equivalent sphere by setting es = 0 and a that sphere–arithmetic mean ; Precedes R_g, R_h, R_lat_a, R_lat_g | pj_ell_set.c, pj_utils.c |
R_g | 1 | 18 | +R_g=1 | turn ellipsoid into equivalent sphere by setting es = 0 and a that sphere–geometric mean ; Precedes R_h, R_lat_a, R_lat_g | pj_ell_set.c |
R_h | 1 | 18 | +R_h=1 | turn ellipsoid into equivalent sphere by setting es = 0 and a that sphere–harmonic mean ; Precedes R_lat_a, R_lat_g | pj_ell_set.c |
R_lat_a | 1 | 66 | +R_lat_a=1 | turn ellipsoid into equivalent sphere by setting es = 0 and a that sphere–arithmetic mean at latitude ; Precedes R_lat_g | pj_ell_set.c, pj_utils.c |
R_lat_g | 1 | 48 | +R_lat_g=1 | turn ellipsoid into equivalent sphere by setting es = 0 and a that sphere–geometric mean at latitude | pj_ell_set.c, pj_utils.c |
R_V | 1 | 33 | +R_V=1 | turn ellipsoid into equivalent sphere by setting es = 0 and a that sphere.volume=ellipsoid.volume ; Precedes R_a, R_g, R_h, R_lat_a, R_lat_g | pj_ell_set.c, pj_utils.c |
rescale | 0 | 4 | +rescale=1 | PJ_isea.c | |
resolution | 0 | 16 | +resolution=1 | PJ_isea.c | |
rf | 1 | 46 | +rf=300.8017 | Reciprocal of the ellipsoid flattening term (e.g. 298) ; Sets es = 1/rf * (2 - 1/rf); precedes f, b | pj_ell_set.c, pj_init.c |
rot | 0 | 0 | |||
rot_conv | 0 | 13 | +rot_conv=1 | bool ; up to Version 4.6.1 | PJ_omerc.c |
S | 0 | 18 | only called from geod.c | geod_set.c | |
s | 0 | 0 | |||
south | 0 | 54 | +south=1 | Denotes southern hemisphere in UTM, Lambert Equal Area Conic, ... | PJ_aea.c, PJ_stere.c, PJ_tmerc.c, proj_etmerc.c |
south_square | 0 | 3 | +south_square=1 | int south_square in(0 to 3) ; since Version 4.9.0 | PJ_healpix.c |
spole | 0 | 1 | +spole=1 | only version 4.8.0: now south_square | PJ_healpix.c |
sweep | 0 | 4 | +sweep=x or +sweep=y | char(1);The sweep angle axis of the viewing instrument. Can be x or y (y is the default). (new in 4.8.0) | PJ_geos.c |
sym | 0 | 0 | |||
syn | 0 | 0 | |||
t | 0 | 0 | |||
theta | 0 | 18 | +theta=0.5 | double theta | PJ_oea.c |
tilt | 0 | 18 | +tilt=31.4 | double omega in tpers Tilted perspective | PJ_nsper.c |
title | 0 | 0 | +title=Lambert III | only in France \nad\IGFN | |
to | 0 | 0 | No Values | ||
to_meter | 1 | 18 | +to_meter=1.1 | Multiplier to convert map units to 1.0m ; overwrites to_meter from List Unit | pj_init.c |
towgs84 | 1 | 62 | +towgs84=-199.87,74.79,246.62 ; towgs84=0,0,4.5,0,0,0.554,0.219 | Datum transformation to WGS84 ; 3 or 7 term datum transform parameters | pj_datum_set.c, pj_utils.c |
units | 1 | 36 | +units=m | Unit ; meters, US survey feet, etc. (see List Unit) ; must be in list Unit | geod_set.c, pj_init.c |
vopt | 0 | 0 | |||
vto_meter | 1 | 4 | +vto_meter=1.1 | vertical unit to Meter ; overwrites to_meter from List Unit | pj_init.c |
vunits | 1 | 4 | +vunits=m | vertical unit ; must be in list Unit else err -7: unknown unit conversion id | pj_init.c |
W | 0 | 54 | +proj=lagrng +lon_0=90w +W=1.4 | double see err -27 | PJ_hammer.c, PJ_lagrng.c |
westo | 0 | 0 | |||
x_0 | 1 | 18 | +x_0=0.0 | False Easting in Meters | pj_init.c |
y_0 | 1 | 18 | +y_0=0 | False Northing in Meters | pj_init.c |
zone | 0 | 36 | +zone=11 | UTM zone | PJ_tmerc.c, proj_etmerc.c |
Projections[edit | edit source]
SinceVersion means the first version that support the projection, a blank in the field means the projection has not been implemented. This table has been updated to PROJ.4 version 4.9.2.
ProjectionCode | ProjectionName | InFile | SinceVersion |
adams_hemi | Adams Hemisphere in a Square | ||
adams_wsI | Adams World in a Square I | ||
adams_wsII | Adams World in a Square II | ||
aea | Albers Equal Area | PJ_aea.c | 4.3.3 (or earlier) |
aeqd | Azimuthal Equidistant | PJ_aeqd.c | 4.3.3 (or earlier) |
airy | Airy | PJ_airy.c | 4.3.3 (or earlier) |
aitoff | Aitoff | PJ_aitoff.c | 4.3.3 (or earlier) |
alsk | Mod. Stererographics of Alaska | PJ_mod_ster.c | 4.3.3 (or earlier) |
apian | Apian Globular I | PJ_bacon.c | 4.3.3 (or earlier) |
apian1 | Apian Globular I | ||
apian2 | Apian II (Arago) | ||
ardn_cls | Arden-Close | ||
arma | Armadillo | ||
august | August Epicycloidal | PJ_august.c | 4.3.3 (or earlier) |
bacon | Bacon Globular | PJ_bacon.c | 4.3.3 (or earlier) |
baker | Baker Dinomic | ||
baranyi4 | Baranyi IV (Snyder) | ||
barth | Bartholomew | ||
bipc | Bipolar conic of western hemisphere | PJ_bipc.c | 4.3.3 (or earlier) |
boggs | Boggs Eumorphic | PJ_boggs.c | 4.3.3 (or earlier) |
bonne | Bonne (Werner lat_1=90) | PJ_bonne.c | 4.3.3 (or earlier) |
braun2 | Braun’s Second (Perspective) | ||
brny_1 | Baranyi I | ||
brny_2 | Baranyi II | ||
brny_3 | Baranyi III | ||
brny_4 | Baranyi IV | ||
brny_5 | Baranyi V | ||
brny_6 | Baranyi VI | ||
brny_7 | Baranyi VII | ||
bromley | Bromley | ||
calcofi | Cal Coop Ocean Fish Invest Lines/Stations | PJ_calcofi.c | 4.9.0 |
cass | Cassini | PJ_cass.c | 4.3.3 (or earlier) |
cc | Central Cylindrical | PJ_cc.c | 4.3.3 (or earlier) |
cea | Equal Area Cylindrical | PJ_cea.c | 4.3.3 (or earlier) |
chamb | Chamberlin Trimetric | PJ_chamb.c | 4.3.3 (or earlier) |
collg | Collignon | PJ_collg.c | 4.3.3 (or earlier) |
crast | Craster Parabolic (Putnins P4) | PJ_crast.c | 4.3.3 (or earlier) |
cyl_stere | Cylindrical Stereographic | ||
denoy | Denoyer Semi-Elliptical | PJ_denoy.c | 4.3.3 (or earlier) |
dummy | Dummy projection | ||
eck_greif | Eckert-Greifendorff | ||
eck1 | Eckert I | PJ_eck1.c | 4.3.3 (or earlier) |
eck2 | Eckert II | PJ_eck2.c | 4.3.3 (or earlier) |
eck3 | Eckert III | PJ_eck3.c | 4.3.3 (or earlier) |
eck4 | Eckert IV | PJ_eck4.c | 4.3.3 (or earlier) |
eck5 | Eckert V | PJ_eck5.c | 4.3.3 (or earlier) |
eck6 | Eckert VI | PJ_gn_sinu.c | 4.3.3 (or earlier) |
eisen | Eisenlohr | ||
eq_moll | Equidistant Mollweide | ||
eqc | Equidistant Cylindrical (Plate Caree) | PJ_eqc.c | 4.3.3 (or earlier) |
eqdc | Equidistant Conic | PJ_eqdc.c | 4.3.3 (or earlier) |
erdi_krusz | Érdi-Krausz | ||
etmerc | Extended Transverse Mercator | proj_etmerc.c | 4.8.0 |
euler | Euler | PJ_sconics.c | 4.3.3 (or earlier) |
fahey | Fahey | PJ_fahey.c | 4.3.3 (or earlier) |
fc_ar | Canters Correct axis ratio | ||
fc_gen | Canters General optimization | ||
fc_pe | Canters Pole length half the length of the equator | ||
fc_pp | Canters Pointed pole, correct axis ratio | ||
fouc | Foucaut | PJ_sts.c | 4.3.3 (or earlier) |
fouc_s | Foucaut Sinusoidal | PJ_fouc_s.c | 4.3.3 (or earlier) |
four1 | Fournier Globular I | ||
four2 | Fourtier II | ||
ftmerc | French Transverse Mercator | ||
gall | Gall (Gall Stereographic) | PJ_gall.c | 4.3.3 (or earlier) |
gbtmerc | Gauss-Boaga | ||
gen_ts | General Sine/Tan | ||
geocent | Geocentric | pj_geocent.c | 4.4.6 |
geos | Geostationary Satellite View | PJ_geos.c | 4.4.9 |
gilbert | Gilbert Two World Perspective | ||
gins8 | Ginsburg VIII (TsNIIGAiK) | PJ_gins8.c | 4.3.3 (or earlier) |
gn_sinu | General Sinusoidal Series | PJ_gn_sinu.c | 4.3.3 (or earlier) |
gnom | Gnomonic | PJ_gnom.c | 4.3.3 (or earlier) |
goode | Goode Homolosine | PJ_goode.c | 4.3.3 (or earlier) |
gs48 | Mod. Stererographics of 48 U.S. | PJ_mod_ster.c | 4.3.3 (or earlier) |
gs50 | Mod. Stererographics of 50 U.S. | PJ_mod_ster.c | 4.3.3 (or earlier) |
gstmerc | Gauss-Schreiber Transverse Mercator (aka Gauss-Laborde Reunion) | PJ_gstmerc.c | 4.6.1 |
guyou | Guyou | ||
hammer | Hammer & Eckert-Greifendorff | PJ_hammer.c | 4.3.3 (or earlier) |
hatano | Hatano Asymmetrical Equal Area | PJ_hatano.c | 4.3.3 (or earlier) |
healpix | HEALPix | PJ_healpix.c | 4.8.0 |
hill | Hill Eucyclic | ||
holzel | Hölzel | ||
igh | Interrupted Goode Homolosine | PJ_igh.c | 4.8.0 |
imw_p | Internation Map of the World Polyconic | PJ_imw_p.c | 4.3.3 (or earlier) |
isea | Icosahedral Snyder Equal Area | PJ_isea.c | 4.8.0 |
kav5 | Kavraisky V | PJ_sts.c | 4.3.3 (or earlier) |
kav7 | Kavraisky VII | PJ_eck3.c | 4.3.3 (or earlier) |
kh_sh | Kharchenko-Shabanova | ||
krovak | Krovak | PJ_krovak.c | 4.4.6 |
ktmerc | Swedish Transverse Mercator | ||
labrd | Laborde | PJ_labrd.c | 4.3.3 (or earlier) |
laea | Lambert Azimuthal Equal Area | PJ_laea.c | 4.3.3 (or earlier) |
lagrng | Lagrange | PJ_lagrng.c | 4.3.3 (or earlier) |
larr | Larrivee | PJ_larr.c | 4.3.3 (or earlier) |
lask | Laskowski | PJ_lask.c | 4.3.3 (or earlier) |
latlon | Lat/long (Geodetic alias) | pj_latlong.c | 4.6.0 |
latlong | Lat/long (Geodetic alias) | pj_latlong.c | 4.4.2 |
lcc | Lambert Conformal Conic | PJ_lcc.c | 4.3.3 (or earlier) |
lcca | Lambert Conformal Conic Alternative | PJ_lcca.c | 4.4.6 |
leac | Lambert Equal Area Conic | PJ_aea.c | 4.3.3 (or earlier) |
lee_os | Lee Oblated Stereographic | PJ_mod_ster.c | 4.3.3 (or earlier) |
longlat | Lat/long (Geodetic alias) | pj_latlong.c | 4.4.2 |
lonlat | Lat/long (Geodetic) | pj_latlong.c | 4.6.0 |
loxim | Loximuthal | PJ_loxim.c | 4.3.3 (or earlier) |
lsat | Space oblique for LANDSAT | PJ_lsat.c | 4.3.3 (or earlier) |
maurer | Maurer | ||
mayr | Mayr-Tobler | ||
mb_S3 | McBryde S3 | ||
mbt_fps | McBryde-Thomas Flat-Pole Sine (No. 2) | PJ_mbt_fps.c | 4.3.3 (or earlier) |
mbt_s | McBryde-Thomas Flat-Polar Sine | PJ_sts.c | 4.3.3 (or earlier) |
mbtfpp | McBride-Thomas Flat-Polar Parabolic | PJ_mbtfpp.c | 4.3.3 (or earlier) |
mbtfpq | McBryde-Thomas Flat-Polar Quartic | PJ_mbtfpq.c | 4.3.3 (or earlier) |
mbtfps | McBryde-Thomas Flat-Polar Sinusoidal | PJ_gn_sinu.c | 4.3.3 (or earlier) |
merc | Mercator | PJ_merc.c | 4.3.3 (or earlier) |
mil_os | Miller Oblated Stereographic | PJ_mod_ster.c | 4.3.3 (or earlier) |
mill | Miller Cylindrical | PJ_mill.c | 4.3.3 (or earlier) |
mill_2 | O.M. Miller 2 | ||
moll | Mollweide | PJ_moll.c | 4.3.3 (or earlier) |
mpoly | Modified Polyconic | PJ_mpoly.c | removed in version 4.6.0 (supported back to 4.3.3 or earlier) |
murd1 | Murdoch I | PJ_sconics.c | 4.3.3 (or earlier) |
murd2 | Murdoch II | PJ_sconics.c | 4.3.3 (or earlier) |
murd3 | Murdoch III | PJ_sconics.c | 4.3.3 (or earlier) |
natearth | Natural Earth | PJ_natearth.c | 4.8.0 |
near_con | Semiconformal | ||
nell | Nell | PJ_nell.c | 4.3.3 (or earlier) |
nell_h | Nell-Hammer | PJ_nell_h.c | 4.3.3 (or earlier) |
nicol | Nicolosi Globular | PJ_nocol.c | 4.3.3 (or earlier) |
nsper | Near-sided perspective | PJ_nsper.c | 4.3.3 (or earlier) |
nzmg | New Zealand Map Grid | PJ_nzmg.c | 4.3.3 (or earlier) |
ob_tran | General Oblique Transformation | PJ_ob_tran.c | 4.3.3 (or earlier) |
ocea | Oblique Cylindrical Equal Area | PJ_ocea.c | 4.3.3 (or earlier) |
oea | Oblated Equal Area | PJ_oea.c | 4.3.3 (or earlier) |
omerc | Oblique Mercator | PJ_omerc.c | 4.3.3 (or earlier) |
ortel | Ortelius Oval | PJ_bacon.c | 4.3.3 (or earlier) |
ortho | Orthographic | PJ_ortho.c | 4.3.3 (or earlier) |
oxford | Oxford Atlas Modified Gall | ||
pconic | Perspective Conic | PJ_sconics.c | 4.3.3 (or earlier) |
poly | Polyconic (American) | PJ_poly.c | 4.3.3 (or earlier) |
psfig:mb P3 | McBryde P3 | ||
psfig:mb Q3 | McBryde Q3 | ||
psfig:mb S2 | McBryde S2 | ||
put2 | Putnins P2 | ||
putp1 | Putnins P1 | PJ_eck3.c | 4.3.3 (or earlier) |
putp1p | Putnins P'1 | ||
putp2 | Putnins P2 | PJ_putp2.c | 4.3.3 (or earlier) |
putp3 | Putnins P3 | PJ_putp3.c | 4.3.3 (or earlier) |
putp3p | Putnins P3' | PJ_putp3.c | 4.3.3 (or earlier) |
putp4 | Putnins P'4 | ||
putp4p | Putnins P4' | PJ_putp4p.c | 4.3.3 (or earlier) |
putp5 | Putnins P5 | PJ_putp5.c | 4.3.3 (or earlier) |
putp5p | Putnins P5' | PJ_putp5.c | 4.3.3 (or earlier) |
putp6 | Putnins P6 | PJ_putp6.c | 4.3.3 (or earlier) |
putp6p | Putnins P6' | PJ_putp6.c | 4.3.3 (or earlier) |
qsc | Quadrilateralized Spherical Cube | PJ_qsc.c | 4.9.1 |
qua_aut | Quartic Authalic | PJ_sts.c | 4.3.3 (or earlier) |
rhealpix | rHEALPix | PJ_healpix.c | 4.8.0 |
robin | Robinson | PJ_robin.c | 4.3.3 (or earlier) |
rouss | Roussilhe Stereographic | proj_rouss.c | 4.5.0 |
rpoly | Rectangular Polyconic | PJ_rpoly.c | 4.3.3 (or earlier) |
s_min_err | Snyder Minimum Error | ||
sch | Spherical Cross-track Height | PJ_sch.c | 4.9.2 |
siemon4 | Siemon IV | ||
sinu | Sinusoidal (Sanson-Flamsteed) | PJ_gn_sinu.c | 4.3.3 (or earlier) |
somerc | Swiss. Obl. Mercator | PJ_somerc.c | 4.3.3 (or earlier) |
stere | Stereographic | PJ_stere.c | 4.3.3 (or earlier) |
sterea | Oblique Stereographic Alternative | PJ_sterea.c | 4.4.9 |
tcc | Transverse Central Cylindrical | PJ_tcc.c | 4.3.3 (or earlier) |
tcea | Transverse Cylindrical Equal Area | PJ_tcea.c | 4.3.3 (or earlier) |
times | Times Atlas | ||
tissot | Tissot Conic | PJ_sconics.c | 4.3.3 (or earlier) |
tmerc | Transverse Mercator | PJ_tmerc.c | 4.3.3 (or earlier) |
tob_g1 | Tobler G1 | ||
tob_sqr | Tobler’s World in a Square | ||
tobler_1 | Tobler’s Alternate #1 | ||
tobler_2 | Tobler’s Alternate #2 | ||
tpeqd | Two Point Equidistant | PJ_tpeqd.c | 4.3.3 (or earlier) |
tpers | Tilted perspective | PJ_nsper.c | 4.3.3 (or earlier) |
ups | Universal Polar Stereographic | PJ_stere.c | 4.3.3 (or earlier) |
urm_2 | Urmayev Cylindrical II | ||
urm_3C | Urmayev Cylindrical III | ||
urm5 | Urmaev V | PJ_urm5.c | 4.3.3 (or earlier) |
urmfps | Urmaev Flat-Polar Sinusoidal | PJ_urmfps.c | 4.3.3 (or earlier) |
utm | Universal Transverse Mercator (UTM) | proj_etmerc.c | 4.3.3 (or earlier) |
vandg | van der Grinten (I) | PJ_vandg.c | 4.3.3 (or earlier) |
vandg2 | van der Grinten II | PJ_vandg2.c | 4.3.3 (or earlier) |
vandg3 | van der Grinten III | PJ_vandg2.c | 4.3.3 (or earlier) |
vandg4 | van der Grinten IV | PJ_vandg4.c | 4.3.3 (or earlier) |
vitk1 | Vitkovsky I | PJ_sconics.c | 4.3.3 (or earlier) |
wag1 | Wagner I (Kavraisky VI) | PJ_urmfps.c | 4.3.3 (or earlier) |
wag2 | Wagner II | PJ_wag2.c | 4.3.3 (or earlier) |
wag3 | Wagner III | PJ_wag3.c | 4.3.3 (or earlier) |
wag4 | Wagner IV | PJ_moll.c | 4.3.3 (or earlier) |
wag5 | Wagner V | PJ_moll.c | 4.3.3 (or earlier) |
wag6 | Wagner VI | PJ_eck3.c | 4.3.3 (or earlier) |
wag7 | Wagner VII | PJ_wag7.c | 4.3.3 (or earlier) |
wag8 | Wagner VIII | ||
wag9 | Wagner IX (Aitoff-Wagner) | ||
weren | Werenskiold I | PJ_putp4p.c | 4.3.3 (or earlier) |
weren2 | Werenskiold II | ||
weren3 | Werenskiold III | ||
wink1 | Winkel I | PJ_wink1.c | 4.3.3 (or earlier) |
wink2 | Winkel II | PJ_wink2.c | 4.3.3 (or earlier) |
wintri | Winkel Tripel | PJ_aitoff.c | 4.3.3 (or earlier) -- Note: Verify if this is implemented in version 4.3.3, but is in definitely in 4.4.0 |