Skip to content

Commit

Permalink
Database: ESRI: fix wrong definition of Geographic 3D CRS that were i…
Browse files Browse the repository at this point in the history
…mported as 2D
  • Loading branch information
rouault authored and github-actions[bot] committed Nov 24, 2023
1 parent 9276214 commit 495a84c
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 12 deletions.
22 changes: 11 additions & 11 deletions data/sql/esri.sql
Original file line number Diff line number Diff line change
Expand Up @@ -2468,32 +2468,32 @@ INSERT INTO "usage" VALUES('ESRI', '104304_USAGE','geodetic_crs','ESRI','104304'
INSERT INTO "supersession" VALUES('geodetic_crs','ESRI','104304','geodetic_crs','EPSG','4304','ESRI',1);
INSERT INTO "geodetic_crs" VALUES('ESRI','104305','GCS_Voirol_Unifie_1960_Degree',NULL,'geographic 2D','EPSG','6422','ESRI','106011',NULL,1);
INSERT INTO "usage" VALUES('ESRI', '104305_USAGE','geodetic_crs','ESRI','104305','EPSG','1365','EPSG','1024');
INSERT INTO "geodetic_crs" VALUES('ESRI','104602','North_American_1983_3D',NULL,'geographic 2D','EPSG','6422','EPSG','6269',NULL,0);
INSERT INTO "geodetic_crs" VALUES('ESRI','104602','North_American_1983_3D',NULL,'geographic 3D','EPSG','6423','EPSG','6269',NULL,0);
INSERT INTO "usage" VALUES('ESRI', '104602_USAGE','geodetic_crs','ESRI','104602','EPSG','1350','EPSG','1024');
INSERT INTO "geodetic_crs" VALUES('ESRI','104613','EUREF_FIN_3D',NULL,'geographic 2D','EPSG','6422','EPSG','6258',NULL,0);
INSERT INTO "geodetic_crs" VALUES('ESRI','104613','EUREF_FIN_3D',NULL,'geographic 3D','EPSG','6423','EPSG','6258',NULL,0);
INSERT INTO "usage" VALUES('ESRI', '104613_USAGE','geodetic_crs','ESRI','104613','EPSG','1095','EPSG','1024');
INSERT INTO "geodetic_crs" VALUES('ESRI','104644','California_SRS_Epoch_2017.50_(NAD83)_3D',NULL,'geographic 2D','EPSG','6422','ESRI','106012',NULL,0);
INSERT INTO "geodetic_crs" VALUES('ESRI','104644','California_SRS_Epoch_2017.50_(NAD83)_3D',NULL,'geographic 3D','EPSG','6423','ESRI','106012',NULL,0);
INSERT INTO "usage" VALUES('ESRI', '104644_USAGE','geodetic_crs','ESRI','104644','ESRI','1','EPSG','1024');
INSERT INTO "geodetic_crs" VALUES('ESRI','104645','GGD_3D',NULL,'geographic 2D','EPSG','6422','ESRI','106010',NULL,0);
INSERT INTO "geodetic_crs" VALUES('ESRI','104645','GGD_3D',NULL,'geographic 3D','EPSG','6423','ESRI','106010',NULL,0);
INSERT INTO "usage" VALUES('ESRI', '104645_USAGE','geodetic_crs','ESRI','104645','EPSG','3251','EPSG','1024');
INSERT INTO "geodetic_datum" VALUES('ESRI','106272','PANAMA08_2011','Panama - ITRF_2008 epoch 2011','EPSG','7019','EPSG','8901',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '106272_USAGE','geodetic_datum','ESRI','106272','EPSG','1186','EPSG','1024');
INSERT INTO "geodetic_crs" VALUES('ESRI','104646','GCS_PANAMA08_2011',NULL,'geographic 2D','EPSG','6422','ESRI','106272',NULL,0);
INSERT INTO "usage" VALUES('ESRI', '104646_USAGE','geodetic_crs','ESRI','104646','EPSG','1186','EPSG','1024');
INSERT INTO "geodetic_crs" VALUES('ESRI','104647','ONGD17_3D',NULL,'geographic 2D','EPSG','6422','ESRI','106027',NULL,1);
INSERT INTO "geodetic_crs" VALUES('ESRI','104647','ONGD17_3D',NULL,'geographic 3D','EPSG','6423','ESRI','106027',NULL,1);
INSERT INTO "usage" VALUES('ESRI', '104647_USAGE','geodetic_crs','ESRI','104647','EPSG','1183','EPSG','1024');
INSERT INTO "supersession" VALUES('geodetic_crs','ESRI','104647','geodetic_crs','EPSG','9293','ESRI',1);
INSERT INTO "geodetic_crs" VALUES('ESRI','104648','S-JTSK_[JTSK03]_3D',NULL,'geographic 2D','EPSG','6422','EPSG','1201',NULL,0);
INSERT INTO "geodetic_crs" VALUES('ESRI','104648','S-JTSK_[JTSK03]_3D',NULL,'geographic 3D','EPSG','6423','EPSG','1201',NULL,0);
INSERT INTO "usage" VALUES('ESRI', '104648_USAGE','geodetic_crs','ESRI','104648','EPSG','1211','EPSG','1024');
INSERT INTO "geodetic_crs" VALUES('ESRI','104653','MONREF_1997_3D',NULL,'geographic 2D','EPSG','6422','EPSG','6656',NULL,0);
INSERT INTO "geodetic_crs" VALUES('ESRI','104653','MONREF_1997_3D',NULL,'geographic 3D','EPSG','6423','EPSG','6656',NULL,0);
INSERT INTO "usage" VALUES('ESRI', '104653_USAGE','geodetic_crs','ESRI','104653','EPSG','1164','EPSG','1024');
INSERT INTO "geodetic_crs" VALUES('ESRI','104664','Nepal_Nagarkot_3D',NULL,'geographic 2D','EPSG','6422','ESRI','106256',NULL,0);
INSERT INTO "geodetic_crs" VALUES('ESRI','104664','Nepal_Nagarkot_3D',NULL,'geographic 3D','EPSG','6423','ESRI','106256',NULL,0);
INSERT INTO "usage" VALUES('ESRI', '104664_USAGE','geodetic_crs','ESRI','104664','EPSG','1171','EPSG','1024');
INSERT INTO "geodetic_crs" VALUES('ESRI','104693','SLD99_3D',NULL,'geographic 2D','EPSG','6422','EPSG','1053',NULL,0);
INSERT INTO "geodetic_crs" VALUES('ESRI','104693','SLD99_3D',NULL,'geographic 3D','EPSG','6423','EPSG','1053',NULL,0);
INSERT INTO "usage" VALUES('ESRI', '104693_USAGE','geodetic_crs','ESRI','104693','EPSG','3310','EPSG','1024');
INSERT INTO "geodetic_crs" VALUES('ESRI','104696','S_JTSK/05_3D',NULL,'geographic 2D','EPSG','6422','EPSG','1052',NULL,0);
INSERT INTO "geodetic_crs" VALUES('ESRI','104696','S_JTSK/05_3D',NULL,'geographic 3D','EPSG','6423','EPSG','1052',NULL,0);
INSERT INTO "usage" VALUES('ESRI', '104696_USAGE','geodetic_crs','ESRI','104696','EPSG','1079','EPSG','1024');
INSERT INTO "geodetic_crs" VALUES('ESRI','104697','S_JTSK/05_Ferro_3D',NULL,'geographic 2D','EPSG','6422','EPSG','1052',NULL,0);
INSERT INTO "geodetic_crs" VALUES('ESRI','104697','S_JTSK/05_Ferro_3D',NULL,'geographic 3D','EPSG','6423','EPSG','1052',NULL,0);
INSERT INTO "usage" VALUES('ESRI', '104697_USAGE','geodetic_crs','ESRI','104697','EPSG','1079','EPSG','1024');
INSERT INTO "geodetic_datum" VALUES('ESRI','106700','D_NAD_1983_HARN_Adj_MN_Anoka','NAD 1983 HARN Adj. Minnesota Anoka','ESRI','107700','EPSG','8901',NULL,NULL,NULL,NULL,0);
INSERT INTO "usage" VALUES('ESRI', '106700_USAGE','geodetic_datum','ESRI','106700','EPSG','1392','EPSG','1024');
Expand Down
9 changes: 8 additions & 1 deletion scripts/build_db_from_esri.py
Original file line number Diff line number Diff line change
Expand Up @@ -657,6 +657,13 @@ def import_geogcs():
assert is_degree or is_grad, row
cs_code = '6422' if is_degree else '6403'

if "CS[ellipsoidal,3]" in wkt2:
assert 'AXIS["Ellipsoidal height (h)",up,ORDER[3],LENGTHUNIT["Meter",1.0]' in wkt2
cs_code = '6423'
geodetic_crs_type = "geographic 3D"
else:
geodetic_crs_type = "geographic 2D"

deprecated = 1 if row[idx_deprecated] == 'yes' else 0

extent_auth_name, extent_code = find_extent(
Expand Down Expand Up @@ -712,7 +719,7 @@ def import_geogcs():
if esri_name not in map_geogcs_esri_name_to_auth_code:
map_geogcs_esri_name_to_auth_code[esri_name] = ['ESRI', code]

sql = """INSERT INTO "geodetic_crs" VALUES('ESRI','%s','%s',NULL,'geographic 2D','EPSG','%s','%s','%s',NULL,%d);""" % (
sql = f"""INSERT INTO "geodetic_crs" VALUES('ESRI','%s','%s',NULL,'{geodetic_crs_type}','EPSG','%s','%s','%s',NULL,%d);""" % (
code, esri_name, cs_code, datum_auth_name, datum_code, deprecated)
all_sql.append(sql)
sql = """INSERT INTO "usage" VALUES('ESRI', '%s_USAGE','geodetic_crs','ESRI','%s','%s','%s','%s','%s');""" % (code, code, extent_auth_name, extent_code, 'EPSG', '1024')
Expand Down

0 comments on commit 495a84c

Please sign in to comment.