Как определить кратчайший путь между точкой и линией на глобусе? - PullRequest
2 голосов
/ 29 марта 2011

Я хочу рассчитать минимальное расстояние между точкой и ограничительной рамкой, которая представляет область широты и долготы на глобусе.Если точка находится между min-long и max-long, тогда я могу просто вычислить расстояние по широте, которое легко, так как его постоянное значение.В противном случае мне нужно вычислить расстояние по формуле Хаверсин от моей точки до точки на продольной линии, которая ближе всего к моей точке.Я вижу много информации о расчете расстояния между двумя точками, но не столько о точке и прямой, ни о нахождении ближайшей точки на линии к точке.

1 Ответ

3 голосов
/ 29 марта 2011

Вы знаете, как найти расстояние между двумя точками.Теперь вам просто нужно знать, как найти расстояние от точки до большого круга.Хитрость заключается в том, чтобы найти точку, равноудаленную от всего большого круга (как северный полюс, равноудаленный от всего экватора), найти расстояние от вашей точки до , что , затем вычесть из 90 градусов (с+/-, в зависимости от того, находится ли ваша точка на той же стороне круга, что и полюс, который вы выбрали).

После того, как этот трюк упал, обратите внимание, что вы пытаетесь найти расстояние от точкик кривой постоянной долготы, которая представляет собой большой круг, чей «полюс» является точкой на экваторе с долготой 90 градусов от кривой.

(Возможно, вам придется нарисовать несколько картинок, ноэто действительно не так сложно.)

...