GeographicLib tiene una interfaz de Python :
Esto puede computar geodésicas en un elipsoide (establecer el aplanamiento en cero para obtener grandes círculos) y puede generar puntos intermedios en una geodésica (ver los comandos "Línea" en la muestra).
Aquí se explica cómo imprimir puntos en la línea geodésica desde
JFK al aeropuerto de Changi (Singapur):
from geographiclib.geodesic import Geodesic
geod = Geodesic.WGS84
g = geod.Inverse(40.6, -73.8, 1.4, 104)
l = geod.Line(g['lat1'], g['lon1'], g['azi1'])
num = 15 # 15 intermediate steps
for i in range(num+1):
pos = l.Position(i * g['s12'] / num)
print(pos['lat2'], pos['lon2'])
->
(40.60, -73.8)
(49.78, -72.99)
(58.95, -71.81)
(68.09, -69.76)
(77.15, -65.01)
(85.76, -40.31)
(83.77, 80.76)
(74.92, 94.85)
...