qgis / QGIS

QGIS is a free, open source, cross platform (lin/win/mac) geographical information system (GIS)
https://qgis.org
GNU General Public License v2.0
10.08k stars 2.93k forks source link

User defined CRS #50743

Open bidrizi74 opened 1 year ago

bidrizi74 commented 1 year ago

What is the bug or the crash?

In User Defined CRS it is impossible to create new CRS with other datum transformation parameters, if CRS already exist with same CRS parameters but with different datum transformation parameters. For several times we tried to create custom CRS such: +proj=tmerc +lat_0=0 +lon_0=21 +k=0.9999 +x_0=7500000 +y_0=0 +ellps=bessel +towgs84=521.748,229.489,590.921,4.029,4.488,-15.521,-9.78 +units=m +no_defs Unfortunatly, we received message by QGIS that "this Proj string definition is equivalent to EPSG:6316.". Same response we received in a case when we tried to define relation betwee bessel and krasowski ellipsoids! +proj=tmerc +lat_0=0 +lon_0=21 +k=0.9999 +x_0=7500000 +y_0=0 +ellps=bessel +krass=121.7,145.5,475.6,4.029,4.488,-15.521,-8.24 +units=m +no_defs

image image image image

Steps to reproduce the issue

To have opportunity creating custom CRS with datum transformation parameters in all cases, without limitations.

Versions

QGIS version 3.26.2-Buenos Aires QGIS code revision feec3d3b12f Qt version 5.15.3 Python version 3.9.5 GDAL/OGR version 3.5.1 PROJ version 9.0.1 EPSG Registry database version v10.064 (2022-05-19) GEOS version 3.10.3-CAPI-1.16.1 SQLite version 3.38.1 PDAL version 2.4.2 PostgreSQL client version unknown SpatiaLite version 5.0.1 QWT version 6.1.6 QScintilla2 version 2.13.1 OS version Windows 10 Version 2009

Active Python plugins gml_application_schema_toolbox 1.3.1 lftools 1.9.0 mmqgis 2021.9.10 ParCatGML 1.4 qfieldsync v4.2.0 quick_map_services 0.19.29 refFunctions 1.6 Topographical_profiles 1.0 db_manager 0.1.20 MetaSearch 0.3.6 processing 2.12.99

Supported QGIS version

New profile

Additional context

No response

nyalldawson commented 1 year ago

Did you follow the dialog prompt and try using a WKT string instead?

bidrizi74 commented 1 year ago

WKT doesn't allow defining datum transformation parameters. In previous versions of QGIS, defining custom CRS with custom datum transformation was possible! Bellow is copy of CRS defined in WKT and proj4:

WKT PROJCRS["MGI 1901 / Balkans zone 7", BASEGEOGCRS["MGI 1901", DATUM["MGI 1901", ELLIPSOID["Bessel 1841",6377397.155,299.1528128, LENGTHUNIT["metre",1]]], PRIMEM["Greenwich",0, ANGLEUNIT["degree",0.0174532925199433]], ID["EPSG",3906]], CONVERSION["Balkans zone 7", METHOD["Transverse Mercator", ID["EPSG",9807]], PARAMETER["Latitude of natural origin",0, ANGLEUNIT["degree",0.0174532925199433], ID["EPSG",8801]], PARAMETER["Longitude of natural origin",21, ANGLEUNIT["degree",0.0174532925199433], ID["EPSG",8802]], PARAMETER["Scale factor at natural origin",0.9999, SCALEUNIT["unity",1], ID["EPSG",8805]], PARAMETER["False easting",7500000, LENGTHUNIT["metre",1], ID["EPSG",8806]], PARAMETER["False northing",0, LENGTHUNIT["metre",1], ID["EPSG",8807]]], CS[Cartesian,2], AXIS["easting (Y)",east, ORDER[1], LENGTHUNIT["metre",1]], AXIS["northing (X)",north, ORDER[2], LENGTHUNIT["metre",1]], USAGE[ SCOPE["Cadastre, engineering survey, topographic mapping (large and medium scale)."], AREA["Bosnia and Herzegovina - east of 19°30'E; Kosovo; Montenegro - east of 19°30'E; Serbia - between 19°30'E and 22°30'E."], BBOX[41.85,19.5,46.18,22.5]], USAGE[ SCOPE["Cadastre."], AREA["North Macedonia."], BBOX[40.85,20.45,42.36,23.04]], ID["EPSG",6316]] Proj4 +proj=tmerc +lat_0=0 +lon_0=21 +k=0.9999 +x_0=7500000 +y_0=0 +ellps=bessel +towgs84=682,-203,480,0,0,0,0 +units=m +no_defs