Просто чтобы убедиться, что я на правильном пути:
Все ли большие круги на сфере и в равносторонней проекции (т. Е. Пары широты и долготы) либо:
- меридианы (то есть переход от полюса к полюсу)
- формы
tan latitude = sin360(longitude + rotation) * amplitude + offset
(с дополнительными ограничениями на комбинации смещения / амплитуды - очевидно, что все трассы большого круга с амплитудой 0 также имеют смещение 0 - экватор).
Или есть пути большого круга, которые не вписываются в эту схему (опять же, только в системе координат долгота-широта, а не в других проекциях карты).
Примечание: я добавил tan
вышеупомянутое после публикации вопроса, в ответ на отличный ответ whubers. Оказывается, offset
тогда всегда 0.
rotation
,amplitude
иoffset
) , когда большие круги , естественно , есть только два параметра (каждый из которых соответствует паре диаметрально противоположным точкам, «полярные» к нему)?amplitude==0
подразумеваетсяoffset=0
; эти два явно связаны. Смотрите обновленный вопрос о пропавших без вести,latitude
чтобы сделать отношения правильно сформированными.Ответы:
Хотя в некоторых проекциях геодезические немного похожи на синусоиды, формула неверна.
Вот одна геодезическая в равноугольной проекции. Понятно, что это не синусоида
(Фоновое изображение взято с http://upload.wikimedia.org/wikipedia/commons/thumb/e/ea/Equirectangular-projection.jpg/800px-Equirectangular-projection.jpg .)
Поскольку все равноугольные проекции являются аффинными преобразованиями этого (где координата x является долготой, а координата y является широтой), а аффинные преобразования синусоидальных волн все еще являются синусоидами, мы не можем ожидать каких-либо геодезических в любой форме Равноугольная проекция должна быть синусоидальной (кроме экватора, который изображен в виде горизонтальной линии). Итак, начнем с самого начала и разработаем правильную формулу.
Пусть уравнение такой геодезической имеет вид
чтобы найти функцию f . (Этот подход уже отказался от меридианов, которые не могут быть записаны в такой форме, но в остальном являются полностью общими.) Преобразование в трехмерные декартовы координаты (x, y, z) дает
где l - долгота и единичный радиус (без потери общности). Поскольку геодезические на сфере являются пересечениями с плоскостями (проходящими через ее центр), должен существовать постоянный вектор (a, b, c) - который направлен между полюсами геодезической - для которого
независимо от того, какое значение л может быть. Решение для f (l) дает
при условии, что с ненулевой. Очевидно, что когда c приближается к 0, мы получаем в пределе пару меридианов, отличающихся на 180 градусов - именно те геодезические, которые мы оставили в самом начале. Так что все хорошо. Кстати, несмотря на внешность, здесь используются всего два параметра, равные a / c и b / c.
Обратите внимание, что все геодезические можно поворачивать до тех пор, пока они не пересекут экватор на нулевой долготе. Это указывает на то, что f (l) можно записать в терминах f0 (l-l0), где l0 - долгота экваториального пересечения, а f0 - выражение геодезического пересечения в главном меридиане. Отсюда получаем эквивалентную формулу
где -180 <= l0 <180 градусов - долгота экваториального пересечения (когда геодезическая входит в северное полушарие при движении на восток), а гамма - положительное действительное число. Это не включает пары меридианов. Когда гамма = 0, он обозначает экватор с начальной точкой на долготе l0; в этом случае мы всегда можем взять l0 = 0, если хотим уникальную параметризацию. На этот раз осталось только два параметра, заданных l0 и gamma .
Mathematica 8.0 была использована для создания изображения. Фактически он создал «динамическую манипуляцию», в которой вектором (a, b, c) можно управлять и соответствующая геодезическая отображается мгновенно. (Это довольно круто.) Сначала мы получаем фоновое изображение:
Вот код в полном объеме:
источник
arctan
где-то. Думаю, я начал с чего-arctan latitude
то.