Hello Andreea

The 4 cm error was a bug in SIS. But the issue was not in the Oblique
Mercator projection; it was rather a rounding error in the unit
conversion of the following map projection parameter:

    Latitude of projection centre: 46°57'8.66"N

The EPSG database stores this parameter value in sexagesimal unit:
46.570866. The conversion to decimal degrees is performed by
org.apache.sis.measure.SexagesimalConverter, which splits the
sexagesimal value in degrees, minutes and seconds components using
multiplications and divisions by 100 and 10000. The problem was in this
operation:

    46.570866 * 10000 = 465708.66000000003

This 3E-11 error introduced by IEEE 754 arithmetic, after cascading in
the initialization of map projection internal coefficients, resulted in
this 4 cm error.

A correction had been pushed on the source repository (all branches).

    Regards,

        Martin


Reply via email to