On mardi 28 avril 2020 16:24:32 CEST Yann-Sebastien Tremblay-Johnston wrote: > Hi, > > Tested using conda gdal 3.0.4 and gdal bundled with QGIS (3.0.4) > > From the documented changes in gdal > 3 with respect to honouring > coordinate order i.e. lat/lon order for EPSG:4326, I would expect that when > > from osgeo import ogr > > > ds = ogr.Open('test.geojson') > > layer = ds.GetLayer() > > srs = layer.GetSpatialRef() > > print(srs.GetAxisMappingStrategy()) > > to yield > > 1 # OAMS_AUTHORITY_COMPLIANT > > > but it yields 0 (OAMS_TRADITIONAL_GIS_ORDER). > I see that the wording in > https://gdal.org/tutorials/osr_api_tut.html?highlight=coordinate%20order#crs > -and-axis-order only > mentions the OGR Coordinate Transformation class (w.r.t honouring axis > order), so is the SpatialReference when reading from GeoJSON in how I've > shown above the intended behavior? I've tried this on both a GeoJSON > without an explicit crs designation and one with a crs > of urn:ogc:def:crs:OGC:1.3:CRS84 and both have the same result > (OAMS_TRADITIONAL_GIS_ORDER).
The behaviour of GDAL < 3 was implictly to honour OAMS_TRADITIONAL_GIS_ORDER when it returned coordinates, so GDAL 3.0 just takes act of this and all OGR drivers will return a SRS with OAMS_TRADITIONAL_GIS_ORDER. The only exception might be the GML driver if opening a dataset when the INVERT_AXIS_ORDER_IF_LAT_LONG=NO open option is set. For GeoJSON, as the implicit authority is urn:ogc:def:crs:OGC:1.3:CRS84 which has longitude,latitude order, OAMS_AUTHORITY_COMPLIANT and OAMS_TRADITIONAL_GIS_ORDER are in practice equivalent. Welcome to a new world of axis order confusion :-) Even -- Spatialys - Geospatial professional services http://www.spatialys.com
_______________________________________________ gdal-dev mailing list gdal-dev@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/gdal-dev