Als ik de gml in een editor open staan alle coördinaten in een lat-long volgorde maar volgens mij verwacht EPSG:4258 een long-lat volgorde: https://epsg.io/4258
Als ik bij het inlezen de coördinaten omkeer, ligt de dataset wel netjes in Nederland.
Is de volgorde in de dataset verkeerd?
Of zit er een fout in PROJ4 en zou EPSG:4258 wel degelijk een lat-long volgorde hanteren.
Overigens maakt QGIS 3.40.8 gebruik van PROJ 9.6.2.
De term PROJ4 haalde ik uit de CRS beschrijving in QGIS:
…
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]],
USAGE[
SCOPE[“Spatial referencing.”],
AREA[“Europe - onshore and offshore: Albania; Andorra; Austria; Belgium; Bosnia and Herzegovina; Bulgaria; Croatia; Czechia; Denmark; Estonia; Faroe Islands; Finland; France; Germany; Gibraltar; Greece; Hungary; Ireland; Italy; Kosovo; Latvia; Liechtenstein; Lithuania; Luxembourg; Malta; Moldova; Monaco; Montenegro; Netherlands; North Macedonia; Norway including Svalbard and Jan Mayen; Poland; Portugal - mainland; Romania; San Marino; Serbia; Slovakia; Slovenia; Spain - mainland and Balearic islands; Sweden; Switzerland; United Kingdom (UK) including Channel Islands and Isle of Man; Vatican City State.”],
BBOX[33.26,-16.1,84.73,38.01]],
ID[“EPSG”,4258]]
Proj4
+proj=longlat +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +no_defs
Bereik
-16.10, 33.26, 38.01, 84.73
bij Proj4 staat dan weer +proj=longlat
Maar ik weet eerlijk gezegd niet wat dit betekent. Zegt dit iets over de verwachte volgorde?
Zoals je ook kunt zien staat in dit stukje ook bij CS lat order 1 en long order 2, dat interpreteer ik dat het CRS eerst een lat coördinaat verwacht en dan een long coördinaat. En in die volgorde staan alle geometrieën ook in de gml.
Ik begrijp nog niet waarom deze Waterwegen dataset (de gml) dus voor de kust van Somalië opduikt, ook als ik het QGIS project instel op 4258 en dus geen transformatie naar 28992 gebruik.
Wat @Jochem dus al aangeeft geeft de gml inderdaad met coordinaten met volgorde latitude, longtitude terug. Ik heb vooralsnog geen antwoord op waarom QGIS daar niet correct mee om lijkt te gaan. Die longlat projstring is een alias en zegt niets over de volgorde. De axis order in de WKT string:
AXIS[“geodetic latitude (Lat)”,north,
ORDER[1],
...
AXIS[“geodetic longitude (Lon)”,east,
ORDER[2]
Excuses, ik zie toch dat de GML srsName in de GML niet matcht met de coordinaten. Dit is ook de reden dat QGIS de coordinaten op een andere plek tekent. Het gedrag van QGIS is juist.
Maar, de GML heeft twee of meer manieren om de srsName te definieren. De manier die ik nu in deze terug zie is een legacy manier EPSG:4258 waarbij de coordinaten wel lonlat moeten zijn (dus voor historische redenen). We gaan de GML fixen.
In bovenstaande betekent Proj4 inderdaad niet dat PROJ-versie 4 gebruikt is maar dat de CRS-definitie die daarna komt een PROJ4-style string is. Dat soort strings zijn overigens ook verouderd, maar PROJ en QGIS ondersteunen ze nog wel.
De longlat in de string is de gebruikte “projectie”. Met longlat wordt alleen bedoeld dat het coördinaten in graden zijn. Het zegt niks over de volgorde van de coördinaten. De “projectie”-namen longlat en latlon zijn synoniemen in zo’n string.
NB: Het woord projectie schrijf ik hierboven tussen aanhalingstekens omdat longlat en latlon eigenlijk helemaal geen projecties zijn. Dergelijke coördinaten in graden zijn ongeprojecteerd.