Martin Desruisseaux created SIS-467: ---------------------------------------
Summary: Unsupported geodesics Key: SIS-467 URL: https://issues.apache.org/jira/browse/SIS-467 Project: Spatial Information Systems Issue Type: Bug Components: Referencing Affects Versions: 1.0 Reporter: Martin Desruisseaux The {{GeodesicOnEllipsoid}} class tries to implement the equations published in Charles F. F. Karney, 2013. [Algorithms for geodesics|https://doi.org/10.1007/s00190-012-0578-z], SRI International. Those algorithms were already implemented in [GeographicLib|https://geographiclib.sourceforge.io/], which we use as a reference implementation in our tests but not in the main code in order to keep the amount of Apache SIS dependencies low. We also want close integration with the rest of SIS framework (automatic conversion of input/output coordinates), keep some intermediate values for computing Bezier curves, _etc._ However our current implementation has the following limitations (maybe because of misunderstanding on our side). The GeographicLib source code may be examined for understanding what we are doing wrong, but the relationships between that source code and the formulas are not easy to establish. h2. Nearly antipodal geodesics on equator Apache SIS does not have a solution for geodesics on equator when the difference of longitude is ∆λ > (1 - _f_)⋅π (close to 180°). This issue is discussed in Karney (2013) below equation 44, but we have not yet understood what is the appropriate action. Even if equation 57 can be use for computing α₁ in such case, we still have equations 11 and 12, for example σ = atan2(sinβ, cosα⋅cosβ), producing 0 because sinβ = 0, which result in a geodesic distance of 0. We surely do something wrong, but I haven't understood what yet. Current SIS implementation throws {{IllegalStateException}} in such case. -- This message was sent by Atlassian JIRA (v7.6.14#76016)