Thanks to Kristian and Even for some very thorough answers. That was
somewhat heavy reading (for me at least) on such an ordinary Wednesday :-)
I'll guess that QGIS (or the underlying transformation library) is using
some of the "earlier" realizations for both ETR89 and WGS84 datums since
theĀ ETR89/UTM32N and WGS84/UTM32N coordinates of a given location is so
close to each other (0.1 mm)
Actually the answer was more than I had hoped for. I'm currently
teaching some students at theĀ Forestry College, University of
Copenhagen some /elementary/ knowledge of projections as a part of their
GIS education.
I'll try to incorporate this knowledge into the curriculum - hopefully
without exploding their brains (or mine) !
--
Med venlig hilsen / Kind regards
Bo Victor Thomsen
Den 25-09-2019 kl. 10:12 skrev Kristian Evers:
For funsies, let's try to do this using the transformations I linked in my
previous email. Here I have used a coordinate that is actually in Denmark.
Using what is currently the best transformation between ITRF2014 and the local
Danish realization of ETRS89 ([email protected] for those who might find that
interesting). I get a horizontal difference between the two of 75.1 cm
echo 12 55 0 2019.0 | cct -d 10 +proj=pipeline +step +proj=cart +ellps=GRS80
+step +init=NKG:ITRF2014 +inv +step +init=NKG:DK
11.9999917811 54.9999951856 -0.0116067529 2019.0000
echo 55 12 54.9999951856 11.9999917811 | geod -I +ellps=GRS80 +units=cm
-135d32'21.267" 44d27'38.709" 75.092
Unless you care about cm to mm accuracy you will be fine using the
transformations that projinfo suggests :-)
/Kristian
-----Original Message-----
From: QGIS-Developer <[email protected]> On Behalf Of Even
Rouault
Sent: 25. september 2019 09:52
To: [email protected]
Subject: Re: [QGIS-Developer] CRS problems with WGS84 and ETRS89
How come ? Or is the error-source sitting ca. 70 cm in front of the
screen ?? (I have a 34" large flatscreen :-)
Because the data for such a transform isn't in the EPSG database.
I believe the main reason is that both WGS84 and ETRS89 are in fact datum
ensembles, that is a short and convenient nickname for a number of more
well-defined datum realizations. For WGS84, you have 6 different realizations
from Transit to G1762. And ETRS89 has 11 realizations from ETRF89 to ETRF2014
So to get accurate data, you must research tranformations between those direct
realizations. And in EPSG, accurate transformations tend not being given in
terms of WGS84 realizations but from their equivalent ITRF realizations
(WGS84(G1762) is identical to ITRF2014 within ~1cm),
so, while playing with PROJ' projinfo utility,
$ projinfo -s ITRF2014 -t ETRF2014
I see 2 potential coordinate transformations, and the one that makes probably
more sense today is the one using epoch 2010 for the transformation:
unknown id, Conversion from ITRF2014 (geog2D) to ITRF2014 (geocentric) +
ITRF2014 to ETRF2014 (2) + Conversion from ETRF2014 (geocentric) to ETRF2014
(geog2D), 0 m, Europe - ETRS89
PROJ string:
+proj=pipeline +step +proj=axisswap +order=2,1 +step +proj=unitconvert
+xy_in=deg +xy_out=rad +step +proj=cart +ellps=GRS80 +step +proj=helmert +x=0
+y=0 +z=0 +rx=0.001785 +ry=0.011151 +rz=-0.01617 +s=0 +dx=0 +dy=0 +dz=0
+drx=8.5e-05 +dry=0.000531 +drz=-0.00077 +ds=0 +t_epoch=2010
+convention=position_vector +step +inv +proj=cart +ellps=GRS80 +step
+proj=unitconvert +xy_in=rad +xy_out=deg +step +proj=axisswap +order=2,1
And you need of course to specify the coordinate epoch of your coordinates as
ITRF/WGS84 are Earth-fixed/dynamic datums.
echo "49 2 0 2019.6" | cct -d 10 +proj=pipeline +step +proj=axisswap +order=2,1
+step +proj=unitconvert +xy_in=deg +xy_out=rad +step +proj=cart +ellps=GRS80 +step
+proj=helmert +x=0 +y=0 +z=0 +rx=0.001785 +ry=0.011151 +rz=-0.01617 +s=0 +dx=0 +dy=0
+dz=0 +drx=8.5e-05 +dry=0.000531 +drz=-0.00077 +ds=0 +t_epoch=2010
+convention=position_vector +step +inv +proj=cart +ellps=GRS80 +step +proj=unitconvert
+xy_in=rad +xy_out=deg +step +proj=axisswap +order=2,1
48.9999955186 1.9999924499 -0.0016582003 2019.6000
Actually using the first proposal using an epoch at 1989, I get exactly the
same results
echo "49 2 0 2019.6" | cct -d 10 +proj=pipeline +step +proj=axisswap +order=2,1
+step +proj=unitconvert +xy_in=deg +xy_out=rad +step +proj=cart +ellps=GRS80 +step
+proj=helmert +x=0 +y=0 +z=0 +rx=0 +ry=0 +rz=0 +s=0 +dx=0 +dy=0 +dz=0 +drx=8.5e-05
+dry=0.000531 +drz=-0.00077 +ds=0 +t_epoch=1989 +convention=position_vector +step +inv
+proj=cart +ellps=GRS80 +step +proj=unitconvert +xy_in=rad +xy_out=deg +step
+proj=axisswap +order=2,1
48.9999955186 1.9999924499 -0.0016582003 2019.6000
That's a 74cm horizontal shift
_______________________________________________
QGIS-Developer mailing list
[email protected]
List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer