[GIS] Transformation problem WGS84 (EPSG:4326) and ETRS89 (EPSG:4258) in QGIS

convertcoordinate systemepsgwgs84

I want to transform vector points from EPSG:4326 to EPSG:4258 and vice versa for survey application. Currently the difference between the two is about 70 cm in xy direction. Using QGIS to transform does not yield correct results (both CRS are basically identical in proj4).

I read about this problem but have not found a workable solution for whole layers. In my layers I have usually up to ten ground control points that need to be transformed.

Is there a solution out there that you could point me to?

Best Answer

Proj6 seems to consider that EPSG:4258 and EPSG:4326 mean the same and conversion between them does not change anything.

projinfo -o PROJ -s "EPSG:4258" -t "EPSG:4326"
Candidate operations found: 1
-------------------------------------
Operation n 1:

EPSG:1149, ETRS89 to WGS 84 (1), 1.0 m, Europe - ETRS89

projinfo -k operation EPSG:1149
PROJ string:
+proj=noop

WKT2_2018 string:
COORDINATEOPERATION["ETRS89 to WGS 84 (1)",
    VERSION["EPSG-eur"],
    SOURCECRS[
        GEOGCRS["ETRS89",
            DATUM["European Terrestrial Reference System 1989",
                ELLIPSOID["GRS 1980",6378137,298.257222101,
                    LENGTHUNIT["metre",1]]],
            PRIMEM["Greenwich",0,
                ANGLEUNIT["degree",0.0174532925199433]],
            CS[ellipsoidal,2],
                AXIS["geodetic latitude (Lat)",north,
                    ORDER[1],
                    ANGLEUNIT["degree",0.0174532925199433]],
                AXIS["geodetic longitude (Lon)",east,
                    ORDER[2],
                    ANGLEUNIT["degree",0.0174532925199433]],
            ID["EPSG",4258]]],
    TARGETCRS[
        GEOGCRS["WGS 84",
            DATUM["World Geodetic System 1984",
                ELLIPSOID["WGS 84",6378137,298.257223563,
                    LENGTHUNIT["metre",1]]],
            PRIMEM["Greenwich",0,
                ANGLEUNIT["degree",0.0174532925199433]],
            CS[ellipsoidal,2],
                AXIS["geodetic latitude (Lat)",north,
                    ORDER[1],
                    ANGLEUNIT["degree",0.0174532925199433]],
                AXIS["geodetic longitude (Lon)",east,
                    ORDER[2],
                    ANGLEUNIT["degree",0.0174532925199433]],
            ID["EPSG",4326]]],
    METHOD["Geocentric translations (geog2D domain)",
        ID["EPSG",9603]],
    PARAMETER["X-axis translation",0,
        LENGTHUNIT["metre",1],
        ID["EPSG",8605]],
    PARAMETER["Y-axis translation",0,
        LENGTHUNIT["metre",1],
        ID["EPSG",8606]],
    PARAMETER["Z-axis translation",0,
        LENGTHUNIT["metre",1],
        ID["EPSG",8607]],
    OPERATIONACCURACY[1.0],
    USAGE[
        SCOPE["unknown"],
        AREA["Europe - ETRS89"],
        BBOX[32.88,-16.1,84.17,40.18]],
    ID["EPSG",1149]]