Muszę użyć Pythona, aby utworzyć dużą odległość od okręgu - zarówno liczbę, a najlepiej jakąś „krzywą”, której mogę użyć do narysowania mapy po stronie klienta. Nie dbam o format krzywej - czy to WKT, czy o zestaw par współrzędnych - ale chcę tylko pobrać dane.
Jakie są tam narzędzia? Czego powinienem użyć?
python
distance
polyline-creation
great-circle
Christopher Schmidt
źródło
źródło
Odpowiedzi udzielone przez innych są nieco bardziej eleganckie, ale oto ultrakrótki, nieco niepytoniczny kawałek Pythona, który zapewnia podstawy. Funkcja przyjmuje dwie pary współrzędnych i określoną przez użytkownika liczbę segmentów. Daje zestaw punktów pośrednich wzdłuż wielkiej ścieżki koła. Dane wyjściowe: tekst gotowy do zapisu jako KML. Ostrzeżenia: Kod nie uwzględnia antypodów i zakłada kulistą ziemię.
Kod Alan Glennon http://enj.com Lipiec 2010 (autor umieszcza ten kod w domenie publicznej. Użyj na własne ryzyko).
-
def tweensegs (długość1, szerokość1, długość2, szerokość2, liczba_sektów):
źródło
GeographicLib ma interfejs Pythona :
Może to komputerowo geodezję na elipsoidzie (ustawić spłaszczanie na zero, aby uzyskać wielkie koła) i może generować punkty pośrednie na geodezyjnej (patrz polecenia „Linia” w przykładzie).
Oto jak wydrukować punkty na linii geodezyjnej z JFK na lotnisko Changi (Singapur):
źródło
pyproj ma funkcję Geod.npts , która zwróci tablicę punktów wzdłuż ścieżki. Zauważ, że nie zawiera on punktów końcowych w tablicy, więc musisz wziąć je pod uwagę:
źródło
geopy Przybornik geokodowania dla Pythona
http://code.google.com/p/geopy/wiki/GettingStarted#Calculating_distances
źródło
Nie korzystałem z tego pakietu, ale wydaje się interesujące i możliwe rozwiązanie: http://trac.gispython.org/lab/wiki/Shapely
źródło
Shapely is a Python package for set-theoretic analysis and manipulation of **planar** features