Jak spočítat vzdálenost dvou GPS souřadnic v excelu?

Potřeboval bych spočítat vzájemné vzdálenosti několika GPS souřadnic v decimálním formátu a nevím jak na to.

Jisté vodítko bylo 1 námořní míle = 1 úhlová minuta, ale to mi vůbec nevychází ani na mapě, ani tady

to ale platí jen pro šířku, a pro délku na rovníku a na kouli

N2jaký návod jsem našel tady: https://www.contextures.com/excellatitudelongitude.html

Kdysi dávno zde dal rsc_cz k dispozici nástroj geocaching_tools2.xls

Je stále ke stažení na stánce https://archaikum.cz/gc/gc_programy.php?info=presun

Mimochodem, skutečně to potřebuješ v Excelu - třebas pro začlenění do nějakách výpočtů ? Protože pro nějaký ojedinělý výpočet je jednodušší použít nějaký geocachingový toolbox, nebo gps vizualizer.

1/ nějaké povídání o výpočtu vzdálenosti na kouli/geoidu různými metodami jsem popisoval zde http://www.geocaching.cz/blog/53/entry-627-sqlgg04-vincentyho-metoda/

2/ n.míle=minuta platí jen v jednom směru a to ještě hrubě

3/ v excelu to vidím na dvě spojené úlohy: převod obvykle v GC používaného formátu souřadnic DD MM.MMM na pro excelovský vzoreček lepší DD.DDDDD a následně výpočet vzorečkem dle zvolené metody (Great Circle - jednodušší, ale méně přesná na větší vzdálenosti >50km, Vincentiho metoda - iterační a tedy složitější na implementaci, ale přesná na "milimetry" i při vzdálenostech přes půl Afriky)

Já mám v Excelu tohle (parametry s1 až v2 jsou severní a východní souřadnice dvou bodů ve stupních decimálně), jestli to funguje na jižní nebo západní polokouli, to jsem nezkoušel. Stačí nakopírovat do modulu Basicu:

'přesný výpočet vzdálenosti po povrchu koule v kilometrech

Public Function Distance(s1, s2, v1, v2 As Double) As Double

    Dim parametr As Double

    Const r = 6378

    Const pi = 3.14159

   

    s1 = s1 * pi / 180

    s2 = s2 * pi / 180

    v1 = v1 * pi / 180

    v2 = v2 * pi / 180

    parametr = Sin(s1) * Sin(s2) + Cos(s1) * Cos(s2) * Cos(v1 - v2)

    If parametr > 1 Then parametr = 1

    parametr = Sqr(1 / parametr ^ 2 - 1)

    Distance = Atn(parametr) * r

End Function

To je ta výše zmíněná nepřesná metoda, protože předpokládá dokonalou kouli, nikoliv reálnější geoid.

to ale platí jen pro šířku, a pro délku na rovníku a na kouli

Bylo by to použitelné, když to chci zhruba, abych z osmdesáti bodů našel dva sobě nejbližší a ty pak změřil přesněji a ani to tak přesně být nemusí, jen chci vědět v jakých číslech se pohybuji? Bylo by to v oblasti okresu.

To je ta výše zmíněná nepřesná metoda, protože předpokládá dokonalou kouli, nikoliv reálnější geoid.

Záleží, k čemu to kdo potřebuje, jak daleko jsou měřené body a jak přesná má být vzdálenost. Já jsem v práci používal výpočet přes Pythagorovu větu a bohatě to stačilo.

Záleží, k čemu to kdo potřebuje, jak daleko jsou měřené body a jak přesná má být vzdálenost. Já jsem v práci používal výpočet přes Pythagorovu větu a bohatě to stačilo.

Ano, záleží na užití...na hrubé poměřování vzdáleností v rámci okresu bude pythagorovka stačit....ale nedělal bych s ní už projekci na desítky metrů, kde budu na pár metrech dohledávat keš. Vincenty (nejpřesnější metoda) pro Excel zde https://github.com/tdjastrzebski/Vincenty-Excel