# Find nearest geographic coordinates

Joa Gre joagre@REDACTED
Sat Nov 28 20:09:55 CET 2020

```This might come in handy:

%% https://en.m.wikipedia.org/wiki/Geographic_coordinate_conversion#From_geodetic_to_ECEF_coordinates
%% https://en.m.wikipedia.org/wiki/Geodetic_datum#World_Geodetic_System_1984_(WGS_84)

geodetic_to_ecef_coordinates(Latitude, Longitude, H) ->
%% Semi-major axis
A = 6378137.0,
A2 = math:pow(A, 2),
%% Semi-minor axis
B = 6356752.3142,
B2 = math:pow(B, 2),
%% Prime vertical radius of curvature
N = A2 / math:sqrt(
math:pow(CLatitude, 2) * A2 + math:pow(SLatitude, 2) * B2),
X = (N + H) * CLatitude * CLongitude,
Y = (N + H) * CLatitude * SLongitude,
Z  = (B2 / A2 * N + H) * SLatitude,
{X, Y, Z}.

Den ons 25 nov. 2020 22:39Frank Muller <frank.muller.erl@REDACTED> skrev:

> Hi guys,
>
> I've a list of geographic coordinates:
>
> L = [ {{<<"longitude">>,6.1457}, {<<"latitude">>,46.2022}},
>       {{<<"longitude">>,2.3387}, {<<"latitude">>,48.8582}},
>       ... ]
>
> and a specific coordinate X = {{<<"longitude">>,-73.5848},
> {<<"latitude">>,45.4995}}.
>
> Question: how can i find the nearest coordinates to X from L (sorted from
> the nearest to the farest)?
>
> /Frank
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20201128/d04396d1/attachment.htm>
```