[Proj] "Double Ellipsoid" error, reproduction
Gerald I. Evenden
geraldi.evenden at gmail.com
Sun Dec 7 22:45:12 EST 2008
On Sunday 07 December 2008 9:59:11 pm Frank Warmerdam wrote:
> Gerald I. Evenden wrote:
> > I find this thread so incredible confusing I have tried to stay out of it
> > If the issue is simply two completely separate operations--- datum
> > conversion and ellipsoid-projection--- then what is all the discussion
> > about???
> This is why I believe it was suggested we should be able (potentially)
> to use different ellipsoid values for the projection calculations and
> for the datum shift.
I do not think we are in any disagreement. Diagramatically I look at the
whole problem simply as:
original map data
with known projection
and projection ellipsoid
(it might even be a sphere)
inv. project with above
ellipsoid and proj param.
datum shift with whatever
info it takes.
geographic data in terms of new datum
project to new map with
parameters and proj ellipsoid
of choice (maybe a sphere)
The nature of the projection at either end of the above operation is
completely arbitrary as is the ellipsoid and/or sphere to which it is
projected. The user *only* has to know how the original data was projected
and its parameters and record for posterity how he/she created the new map.
This is why I looked at cs2cs as simply the following procedure:
proj4 -I <params> | datum_convert <params> | proj4 <params>
with either end of the pipeline possibly missing. For the unwashed user all
one had to do was make a wrapper program and generate the above pipe string
to pass to a system call.
If the something like the above had been used it would be a lot easier to
update the process with later releases of projection software. ;-)
As a bit of amusing history: the above approach to piecemealling the processes
dates back to my experience writing programs for the IBM 360 where the
computer division chief charged extra for any program that took over 110Kb of
memory. Besides learning to be tight programmers we also became whizes at
using JCL. (For the young ones, JCL stands for Job Control Language where
one creates pipes the hard way).
The whole religious complexion of the modern world is due
to the absence from Jerusalem of a lunatic asylum.
-- Havelock Ellis (1859-1939) British psychologist
More information about the Proj