[GRASS5] Grass Projection Parameters

Eric G. Miller egm2 at jps.net
Thu Feb 14 01:56:49 EST 2002


On Wed, Feb 13, 2002 at 09:53:26PM -0800, Jeshua Lacock wrote:
> 
> On Wednesday, February 13, 2002, at 08:53 PM, Eric G. Miller wrote:
> 
> >>Is there a way to find or generate a list that shows which parameters
> >>are required/supported by each of the 121 projections?
> >>
> >>For instance Albers Equal Area use False Easting and Northing, etc.
> >>that say UTM does not. Another example is UTM requires a zone and so
> >>forth.
> >
> >Have a look at grass/src/libes/gis/geo_init.c  Do your user's a favor
> >though, and don't offer *both* datum and ellipsoid (make it either or)
> >as a datum defines the ellipsoid (still need it in PROJ_INFO).  This
> >behavior in g.setproj is almost irritating enough for me to go and
> >fix it (that, and the state plane crap) ;)
> 
> Hello Eric,
> 
> Thanks for the pointers, that looks like the golden ticket.
> 
> So (all?) projections use either a custom datum OR ellipsoid. I assume 
> that one of them must be supplied with all projections (minus XY)?

Datums define the ellipsoid.  There are some "tables" you can use in
the coorcnv library that crosswalk datums to ellipsoid (notably, the
datum.table that gets put in grass5/etc).  Most the time it doesn't
matter unless a datum shift needs to be done (something which
GRASS doesn't currently handle).  But some datums are a little
perculiar, whereby the prime meridian isn't at Greenwich, so
longitudes need to be shifted (again, this probably doesn't matter
until the projection code handles datum shifts).

So, the ellipsoid is always needed in PROJ_INFO, but the UI should
just look up the correct ellipsoid *iff* the user specifies a
predefined datum.  The datum is optional, but should be strongly
encouraged over the use of just ellipsoid parameters.

<snippet of datum table>
FIELDS: datum abbr., Long Name, *ellipsoid*, datum shift params (3-param...).

# World Geodetic System 1984
wgs84  "World Geodetic System 1984"	  wgs84		dx=0.0	    dy=0.0      dz=0.0
# World Geodetic System 1972
wgs72  "World Geodetic System 1972"       wgs72         dx=0.0      dy=0.0      dz=5.0
# North American 1927
nad27  "North American 1927"              clark66       dx=-22.0    dy=157.0    dz=176.0
# North American 1983 (CONUS)
nad83	"North American 1983"		  grs80		dx=0.0	    dy=0.0	dz=0.0
# Alaska and Canada
a-can  "Alaska and Canada NAD27"          clark66       dx=-9.0     dy=151.0    dz=185.0 
# European datum
eur    "European"                         international dx=-84.0    dy=-103.0   dz=-127.0

</end snippet>

-- 
Eric G. Miller <egm2 at jps.net>



More information about the grass-dev mailing list