[PROJ] Some (probably dumb) questions about cs2cs and projinfo
Andrea Giudiceandrea
andreaerdna at libero.it
Tue Feb 24 01:35:32 PST 2026
Hi list,
I've noticed a behaviour of cs2cs and projinfo (PRJ 9.7.1 / OSGeo4W)
that I'm having trouble understanding (probably because I don't usually
use them).
Trying to reproject a point in Italy, say 620000 4540000 EPSG:23033 to
EPSG:25833:
projinfo -s EPSG:23033 -t EPSG:25833 -o PROJ
returns 1 operation that is a simple ballpark operation with unknown
declared accuracy
+proj=pipeline
+step +inv +proj=utm +zone=33 +ellps=intl
+step +proj=utm +zone=33 +ellps=GRS80
projinfo -s EPSG:23033 -t EPSG:25833 -o PROJ --spatial-test intersects
returns 3 operations: the first 2 ones are Helmert with different
parameters for Norway and Denmark and 1 meter accuracy declared and the
third one is the same ballpark operation;
echo 620000 4540000 | cs2cs EPSG:23033 EPSG:25833
returns
619994.54 4539920.85 0.00
i.e. cs2cs is using the ballpark operation (probably because the point
is outside the area of use of the first two ones).
Trying to reproject the same point 620000 4540000 EPSG:23033 to EPSG:3065:
projinfo -s EPSG:23033 -t EPSG:3065 -o PROJ
returns the same simple ballpark operation;
projinfo -s EPSG:23033 -t EPSG:3065 -o PROJ --spatial-test intersects
returns 2 operations: the first one uses a NTv2 grid shift file which is
not available, the second one is the same ballpark operation;
echo 620000 4540000 | cs2cs EPSG:23033 EPSG:3065
returns
619926.95 4539810.94 0.00
So... in this case I wonder which operation is used by cs2cs: the first
one should not be usable because the grid shift file is not available,
whereas if the second one was used, I guess it should have returned the
same result as EPSG:23033 to EPSG:3065.
For EPSG:23033 to EPSG:25833, QGIS lists the same 3 operations listed by
projinfo with "--spatial-test intersects" but it considers the first one
as the preferred one (whereas cs2cs uses the third one); for EPSG:23033
to EPSG:3065, it lists the same 2 operations listed by projinfo with
--spatial-test intersects, but it uses the second one since the grid
shift file needed for the first one is not available (whereas I don't
understand which operation is used by cs2cs).
Even stranger for me is the case of EPSG:23033 to EPSG:6708...
Could someone help me understanding such behaviours?
Regards.
Andrea Giudiceandrea
More information about the PROJ
mailing list