Я решил задачку и вроде бы даже правильно, но не пойму почему почему в нете ответы другие... Помогите пожалуйста!
Дано: широта и долгота 1-ой точки
S1 и
D1, широта и долгота 2-ой точки
S2 и
D2, радиус
R.
Найти: расстояние
L.
p.s. shirota и dolgota, поэтому обозначил этими буквами s и d.
Решение (верное ли?):
Координаты точки сферы параметрически вычисляются так:
где S из [

;

], D из [

,

].
Вычислив точки
P1 и
P2 относительно центра сферы, можно найти угол между векторами
P1 и
P2 с помощью скалярного произведения, причем:
<P1, P2> = |P1| * |P2| * cos(A) = R * R * cos(A)
где A искомый угол.
Таким образом, находя скалярное произведение получим (я его заранее поделю на R^2, чтобы много не писать):
A найдем через arccos. Расстояние
L = A * R.
В итоге получим:
Верно ли это? Просто я находил другую формулу в нете (такую как тут
http://tvsh2004.narod.ru/geo_koor.htm или вот тут
http://dxdy.ru/viewtopic.php?t=13182), но не пойму почему там так...
Помогите разобраться пожалуйста!