Berechnen Sie den Mittelpunkt mehrerer Breiten- / Längenkoordinatenpaare

Da eine Reihe von Längen-und Breitengrad Punkte, wie kann ich berechnen die breiten-und Längengrad des Mittelpunkts der dass-Satz (aka ein Punkt, der center würde eine Sicht auf alle Punkte)?

BEARBEITEN von: Python-Lösung, die ich verwendet habe:

Convert lat/lon (must be in radians) to Cartesian coordinates for each location.
X = cos(lat) * cos(lon)
Y = cos(lat) * sin(lon)
Z = sin(lat)

Compute average x, y and z coordinates.
x = (x1 + x2 + ... + xn) / n
y = (y1 + y2 + ... + yn) / n
z = (z1 + z2 + ... + zn) / n

Convert average x, y, z coordinate to latitude and longitude.
Lon = atan2(y, x)
Hyp = sqrt(x * x + y * y)
Lat = atan2(z, hyp)

InformationsquelleAutor der Frage zeke | 2011-07-12

Schreibe einen Kommentar