[Proj] "Double Ellipsoid" error, reproduction

Glynn Clements glynn at gclements.plus.com
Mon Dec 8 13:05:46 EST 2008


Gerald I. Evenden wrote:

> Would it not be possible to write cs2cs where all the proj control is 
> available on both sides of the +to dividing line?  That is, the pipeline 
> script in cs2cs would could look like:
> 
> cs2cs +proj=merc +R=12..9 +datum_conversion_options +to \
>        +proj=merc +ellps=<Potsdam's ellipsoid>
> 
> If the "proj=" were omitted on either side, the +latlon would be the default.
> The <datum conversion options> could be placed anywhere.
> 
> A big part of the problem is that things like EPSG or data sets defining US 
> state plane coordinates system do indeed bind projection-ellipsoid-datum into 
> a single definition.  And that is fine.  *BUT* we do need the flexibility to 
> handle the odd case where the "cs" is not in a convenient library of standard 
> systems.  The "cs" in cs2cs neet not be in EPSG or NAD data sets and the user 
> should be free to define all the details themselves like I have proto'ed in 
> the last script example.
> 
> cs2cs may already do this but it is unclear from current discussions.

cs2cs allows specification of an ellipsoid and/or datum for both the
source and destination . Essentially, you have a pipeline of:

	cartographic
	[inv.src.proj.]
	lat/lon
	[src.ellipsoid]
	geocentric
	[src.datum]
	WGS84
	[dst.datum]
	geocentric
	[dst.ellipsoid]
	lat/lon
	[fwd.dst.proj.]
	cartographic

(where some stages are optional).

However, you only get to specify two ellipsoids and two datums, so you
can't convert e.g. ED50 to WGS84 then project using spherical
Mercator; the final projection will automatically use the WGS84
ellipsoid parameters.

Presumably it was taken for granted that if you've gone to the trouble
of converting to a specific ellipsoid, you then want to use that
ellipsoid for the projection, rather than choosing a completely
different ellipsoid.

-- 
Glynn Clements <glynn at gclements.plus.com>


More information about the Proj mailing list