aboutsummaryrefslogtreecommitdiff
path: root/src/wkt1_grammar.y
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2020-10-22 19:34:23 +0200
committerEven Rouault <even.rouault@spatialys.com>2020-10-22 19:34:23 +0200
commit698e51f476772ebfdd8ba7b93c5a5beafcb90f64 (patch)
treea60a1212cc22623a4206b22ffe751cff7f4ce39d /src/wkt1_grammar.y
parent4fa0c250c125b8b034e0a17d2d03909dafdb6813 (diff)
downloadPROJ-698e51f476772ebfdd8ba7b93c5a5beafcb90f64.tar.gz
PROJ-698e51f476772ebfdd8ba7b93c5a5beafcb90f64.zip
WKT parser: accept implicit compoundCRS from ESRI WKT, like "PROJCS[...],VERTCS[...]"
Diffstat (limited to 'src/wkt1_grammar.y')
-rw-r--r--src/wkt1_grammar.y17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/wkt1_grammar.y b/src/wkt1_grammar.y
index e17135c6..4a767997 100644
--- a/src/wkt1_grammar.y
+++ b/src/wkt1_grammar.y
@@ -128,7 +128,11 @@ integer:
/* 7.2 Coordinate System WKT */
coordinate_system:
- horz_cs | geocentric_cs | vert_cs | compd_cs | fitted_cs | local_cs
+ horz_cs_with_opt_esri_vertcs | geocentric_cs | vert_cs | compd_cs | fitted_cs | local_cs
+
+horz_cs_with_opt_esri_vertcs:
+ horz_cs
+ | horz_cs ',' esri_vert_cs
horz_cs:
geographic_cs | projected_cs
@@ -217,7 +221,10 @@ authority:
vert_cs:
T_VERT_CS begin_node_name ',' vert_datum ',' linear_unit opt_axis_authority end_node
- | T_VERTCS begin_node_name ',' vdatum ',' opt_parameter_list_linear_unit end_node
+ | esri_vert_cs
+
+esri_vert_cs:
+ T_VERTCS begin_node_name ',' vdatum ',' opt_parameter_list_linear_unit end_node
opt_axis_authority:
| ',' axis opt_authority
@@ -240,10 +247,12 @@ compd_cs:
T_COMPD_CS begin_node_name ',' head_cs ',' tail_cs opt_extension_authority end_node
head_cs:
- coordinate_system
+ horz_cs
+// Accepting a geographic CRS as part of the second CRS of a COMPD_CS is horrible
+// but found in LAS WKT
tail_cs:
- coordinate_system
+ geographic_cs | vert_cs
twin_axis: axis ',' axis