<div dir="ltr"><br><br>On Thu, Feb 4, 2021 at 12:58 AM Nicolas Bellaiche <<a href="mailto:Nicolas.Bellaiche@ign.fr">Nicolas.Bellaiche@ign.fr</a>> wrote:<br>><br>> Hi,<br>><br>> Two major problems I'm struggling with:<br>><br>> 1) computing the proj_factors with the C API.<br>><br>> My code seems very simple:<br>><br>> my_proj = proj_create(nullptr, "IGNF:LAMB93");<br>><br>> auto geodetic_crs = proj_crs_get_geodetic_crs(nullptr, my_proj);<br>><br>> PJ_FACTORS facs = proj_factors(geodetic_crs, coord);<br>><br>><br>> the error message sent by proj_factors is "latitude or longitude exceeded limits" but when I look into the code, it seems the geodetic_crs->fwd is not initialized.<br><div><br></div><div>According to "projinfo -o WKT2:2019 IGNF:LAMB93", the bbox is</div><div>       BBOX[41,-5.5,52,10]]</div><div>here, easting and northing seem to be swapped, the WKT2 output says that easting is the first axis.</div><div><br></div><div>Following your code and using</div><div>        coord = proj_coord(5.0, 47.0, 0.0, 0.0);</div><div>which is somewhere inside the reported bbox, I don't get any errors. Maybe your coords are outside the bbox, thus "latitude or longitude exceeded limits"?</div><div><br></div><div>></div>><br><div>> The problem disappears if I call proj_init_plus but then I can't use the useful proj_crs_get_horizontal_datum, proj_create_ellipsoidal_2D_cs with the PJ object created.</div><div><br></div><div>proj_crs_get_horizontal_datum() is independent of any PJ_COORD and may fail if there is no horizontal datum, but "IGNF:LAMB93" has "Reseau Geodesique Francais 1993" as datum. In my test with "IGNF:LAMB93", proj_crs_get_horizontal_datum() works with both the original crs and the crs from proj_crs_get_geodetic_crs();</div><div><br></div><div>proj_create_ellipsoidal_2D_cs() is experimental.<br></div>><br>><br><div>> Anybody understanding what's wrong with my code?</div><div><br></div><div>Wrong coordinates? Using experimental code?</div><div><br></div><div>Markus M<br></div>><br>><br>><br>> 2) if I initialize my PJ object with proj.db, it seems the geoid grid of IGNF:LAMB93 is not loaded, so I can't compute the ellipsoidal height from the altitude and vice versa. I can do it with the old format of proj4 (by copying the file IGNF of PROJ4 in the PROJ_LIB directory and using "+init=IGNF:LAMB93") but then the object is not recognized as an iso object and once again I can't use proj_crs_get_horizontal_datum, proj_create_ellipsoidal_2D_cs etc...<br>><br>><br>> Is there anything I did wrong or is it an issue with PROJ7?<br>><br>><br>> I hope I've been clear enough, any help would be really appreciated,<br>><br>><br>> Thanks a lot for your answers,<br>><br>><br>> Nicolas Bellaiche<br>><br>> _______________________________________________<br>> PROJ mailing list<br>> <a href="mailto:PROJ@lists.osgeo.org">PROJ@lists.osgeo.org</a><br>> <a href="https://lists.osgeo.org/mailman/listinfo/proj">https://lists.osgeo.org/mailman/listinfo/proj</a></div>