2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Найти сферические координаты точки
Сообщение16.05.2011, 18:54 
Доброго времени, математики!!

Очень сильно нуждаюсь в вашей помощи.
Дело в том что нужна ф-ия которая нашла бы координаты точки на сфере(Земле) по текущей точки, дистанции(длина дуги от начальной) и направленю движения(азимут - угол относительно севера планеты).
Все мои мысли и наработки можете посмотреть здесь:
http://www.cyberforum.ru/geometry/thread296981.html

 
 
 
 Re: Найти сферические координаты точки
Сообщение16.05.2011, 19:44 
Аватара пользователя
Думаю, черед матрицы поворота как раз проще всего. Другой вариант - аналитическая геометрия: задать расстояние на сфере через скалярное произведение векторов, направление - через положение нормального вектора плоскости, и решать систему уравнений.

 
 
 
 Re: Найти сферические координаты точки
Сообщение17.05.2011, 01:16 
Аватара пользователя
Я бы тоже делал через матрицы поворота.
Для удобства считаем, что Северный полюс -- это верхняя точка сферы. Дистанцию нужно предварительно пересчитать в угол $\beta$ между начальной и конечной точкой с вершиной в центре сферы. Тогда из задачи исчезают расстояния, остаются только углы.

Вводим декартов базис $\mathbf{i}$, $\mathbf{j}$, $\mathbf{k}$ (векторы строим из центра сферы), причем
$\mathbf{i}$ направлен в точку на пересечении экватора и нулевого меридиана (500 км на юг от города Аккра, Гана, Африка :D );
$\mathbf{j}$ направлен в точку на пересечении экватора и меридиана 90° в.д. (1500 км на запад от Сингапура);
$\mathbf{k}$ направлен на Северный полюс.

Пусть $\lambda$ -- долгота начальной точки, $\varphi$ -- широта начальной точки, $\alpha$ -- азимут (отсчитываемый от севера на восток), $\beta$ -- угол, соответствующий дистанции.

Теперь я сделаю четыре поворота базиса. Я указываю ось, вокруг которой делаю поворот, и угол поворота. Положительным считается поворот против часовой стрелки, если указанная ось вращения смотрит на наблюдателя.

Вокруг оси $\mathbf{k}$ на угол $\lambda$
Вокруг оси $\mathbf{j}$ на угол $-\varphi$
Вокруг оси $\mathbf{i}$ на угол $-\alpha$
Вокруг оси $\mathbf{j}$ на угол $-\beta$
Понятно, каждый раз поворот делается вокруг оси, получившейся в результате предыдущих поворотов, а не вокруг оси самого исходного базиса.

Утверждается, что в результате ось $\mathbf{i}$ будет показывать на конечную точку.

При каждом повороте был использован один из четырех параметров, и притом простейшим образом. Остается составить и перемножить четыре матрицы.

 
 
 
 Re: Найти сферические координаты точки
Сообщение17.05.2011, 17:35 
Аватара пользователя
Я отгадаю эту мелодию в один поворот...

 
 
 [ Сообщений: 4 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group