diff options
Diffstat (limited to 'src/iso19111/crs.cpp')
| -rw-r--r-- | src/iso19111/crs.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/iso19111/crs.cpp b/src/iso19111/crs.cpp index a12c6aa0..b48f0d70 100644 --- a/src/iso19111/crs.cpp +++ b/src/iso19111/crs.cpp @@ -201,6 +201,10 @@ const GeodeticCRS *CRS::extractGeodeticCRSRaw() const { if (boundCRS) { return boundCRS->baseCRS()->extractGeodeticCRSRaw(); } + auto derivedProjectedCRS = dynamic_cast<const DerivedProjectedCRS *>(this); + if (derivedProjectedCRS) { + return derivedProjectedCRS->baseCRS()->extractGeodeticCRSRaw(); + } return nullptr; } //! @endcond @@ -2427,7 +2431,7 @@ GeodeticCRS::identify(const io::AuthorityFactoryPtr &authorityFactory) const { thisDatum->primeMeridian().get(), util::IComparable::Criterion::EQUIVALENT, dbContext) && - (!l_implicitCS || + (l_implicitCS || coordinateSystem()->_isEquivalentTo( crs->coordinateSystem().get(), util::IComparable::Criterion::EQUIVALENT, |
