From e493a5c17b2ebebb687b1758c0a10c418ffd49d3 Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Tue, 21 Apr 2020 20:45:49 +0200 Subject: Add limited support for non-conformant WKT1 LAS COMPD_CS[] (#2171) * Allow importing EPSG:{horizontal_code}+{geographic_code} and turn it into valid Geographic 3D or Projected 3D CRS internally * Allow importing WKT1 COMPD_CS[] with above structure * On an object imported that way, allow exporting to WKT1_GDAL, with this non-standard structure of a horizontal CRS + geographic CRS --- include/proj/crs.hpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'include/proj/crs.hpp') diff --git a/include/proj/crs.hpp b/include/proj/crs.hpp index 30134cb4..61844f79 100644 --- a/include/proj/crs.hpp +++ b/include/proj/crs.hpp @@ -138,6 +138,8 @@ class PROJ_GCC_DLL CRS : public common::ObjectUsage, PROJ_INTERNAL CRSNNPtr normalizeForVisualization() const; + PROJ_INTERNAL CRSNNPtr allowNonConformantWKT1Export() const; + //! @endcond protected: @@ -892,6 +894,14 @@ class PROJ_GCC_DLL CompoundCRS final : public CRS, const std::vector &components); // throw InvalidCompoundCRSException + //! @cond Doxygen_Suppress + PROJ_INTERNAL static CRSNNPtr + createLax(const util::PropertyMap &properties, + const std::vector &components, + const io::DatabaseContextPtr + &dbContext); // throw InvalidCompoundCRSException + //! @endcond + protected: // relaxed: standard say SingleCRSNNPtr PROJ_INTERNAL explicit CompoundCRS(const std::vector &components); -- cgit v1.2.3