[PROJ] [PROJ 6.0.0] Different behaviors for creating a transformation of type EPSG:9616

Even Rouault even.rouault at spatialys.com
Tue Apr 30 06:50:23 PDT 2019


On mardi 30 avril 2019 13:06:43 CEST Didier Richard wrote:
> Hi all,
> 
> Still on library testing, I try to create using different methods a
> transformation that exists in the proj.db, in other_transformation table
> (IGNF:TSG1250 which is EPSG:9616 method) :
> 
> 1.- using proj_create : fails ;

Yes, expected. See
https://proj4.org/development/reference/functions.html#c.proj_create

Short syntax AUTH:CODE in proj_create() will try only CRS objects.
Use urn:ogc:def:coordinateOperation:AUTH::CODE for coordinate operations

> 2.- using proj_create_from_database : succeed but got a type different from
> the one given to the function ;

Misuse of the API. You should pass a PJ_CATEGORY value, not a PJ_TYPE one;
Unfortunately a C compiler doesn't warn about that, wheras a C++ errors out.
So use PJ_CATEGORY_COORDINATE_OPERATION
(the fact that it returned something is completely undefined behavior. it 
might have crashed as well)

> 3.- using proj_create_from_name : succeed
> but got a type which is not PJ_TYPE_OTHER_COORDINATE_OPERATION (expected).

Yes, returns PJ_TYPE_TRANSFORMATION=22 as expected

-- 
Spatialys - Geospatial professional services
http://www.spatialys.com


More information about the PROJ mailing list