[PROJ] (Angular/Linear/Scale) speed in C++ API

Martin Desruisseaux martin.desruisseaux at geomatys.com
Mon Dec 2 13:12:38 PST 2019


Le 02/12/2019 à 20:06, Even Rouault a écrit :

> Yes. But is there really an un-ambiguous interpretation of OGC 
> 01-009... ? I doubt so: isn't that the reason for WKT2 ?
>
I think it is mostly (not completely) unambiguous. At least the units of 
measurements of PRIMEM and PARAMETER elements were clearly defined [1]. 
Some confusion that I saw in the past was caused by the fact that GEOGCS 
(for GeographicCRS) and GEOCCS (for GeocentricCRS) keywords are too 
similar (they differ only by a "G" versus "C" letter). The difference is 
so easy to miss that a past GDAL/PROJ maintainer concluded that OGC 
01-009 was self-contradicting, and thus went away with his 
interpretation in GDAL. But it was an (understandable) misreading of the 
specification rather than a specification inconsistency.

OGC 01-009 was ambiguous in some aspects, for example the projection 
parameter names were not defined except for a short list of map 
projections, but units of measurements was not an OGC 01-009 ambiguity 
(it was an OGC 99-049 ambiguity however - I think this is the origin of 
the problem). But the reality was that no matter what OGC 01-009 said, 
the software implementations were heterogeneous regarding their 
compliance to that specification. Because we had no way to distinguish 
whether a WKT 1 string is compliant with OGC O1-009 or not, we had to 
create new keywords for making clear that a WKT is using the OGC 01-009 
rules for units of measurements. Other reasons for creating WKT 2 were 
because WKT 1 was based on a conceptual model that predated ISO 19111, 
for erasing the use of WGS84 as an universal hub, and because of WKT 1 
ambiguities other than units of measurements.


>> If yes, what is the difference between 
>> WKTFormatter::Convention::WKT1_GDAL and 
>> WKTFormatter::Convention::WKT1_ESRI?
>>
> A lot... CRS names, datum names, ellipsoid names, projection method 
> names, parameter names. No AUTHORITY[] or AXIS[] nodes in WKT1_ESRI. 
> Basically WKT1_ESRI is what you find in shapefile .prj files
>
Ah okay, the differences are in the naming and in the presence of 
AUTHORITY/AXIS elements. Thanks, I will update documentation. Thanks 
also for the example.

     Martin

[1] http://www.geoapi.org/3.0/javadoc/org/opengis/referencing/doc-files/WKT.html#PRIMEM - this is copied verbatim from OGC 01-009.



More information about the PROJ mailing list