В который раз преобразование GPS в X Y
-
- Новоприбывший
- Сообщения: 8
- Зарегистрирован: 10 авг 2009, 09:35
- Репутация: 0
В который раз преобразование GPS в X Y
Добрый день.
Прошу помощи в разъяснении алгоритма преобразования GPS координат в X Y проекцию на плоскости. Я пробовал преобразовывал по формулам, но у меня ничего не получается. Суть в том что у меня есть точка в X, Y координатах (0; 0). Мне надо вычислить координаты X, Y если у меня есть координаты GpsX и GpsY в формате DD.DDDDDD относительно этой точки. Исходя из вышеуказанных формул я сделал допущение относительно отрезков dlat и dlon в том что они тоже начинаются относительно этой точки приравняв их начала нулям. Сответсвенно X = 63781370 *(1 - e ^ 2) * GpsX; Y = 63781370 * GpsY. Но у меня получилась не изогнутая проекция, то есть то же самое, что и взять просто Gps координаты и нарисовать ими на плоскости. Может кто пояснит в чем проблема и скажет как правильно преобразовать?
Заранее благодарю.
(пс. кстати что есть lat а что log если X - вправо на лево, а Y - снизу вверх )
Прошу помощи в разъяснении алгоритма преобразования GPS координат в X Y проекцию на плоскости. Я пробовал преобразовывал по формулам, но у меня ничего не получается. Суть в том что у меня есть точка в X, Y координатах (0; 0). Мне надо вычислить координаты X, Y если у меня есть координаты GpsX и GpsY в формате DD.DDDDDD относительно этой точки. Исходя из вышеуказанных формул я сделал допущение относительно отрезков dlat и dlon в том что они тоже начинаются относительно этой точки приравняв их начала нулям. Сответсвенно X = 63781370 *(1 - e ^ 2) * GpsX; Y = 63781370 * GpsY. Но у меня получилась не изогнутая проекция, то есть то же самое, что и взять просто Gps координаты и нарисовать ими на плоскости. Может кто пояснит в чем проблема и скажет как правильно преобразовать?
Заранее благодарю.
(пс. кстати что есть lat а что log если X - вправо на лево, а Y - снизу вверх )
-
- Интересующийся
- Сообщения: 25
- Зарегистрирован: 08 июл 2009, 11:00
- Репутация: 0
Re: В который раз преобразование GPS в X Y
А вы какую проекцию хотите в итоге получить?
lat - широта т.е. по оси Y
log - долгота т.е. по оси X
lat - широта т.е. по оси Y
log - долгота т.е. по оси X
-
- Новоприбывший
- Сообщения: 8
- Зарегистрирован: 10 авг 2009, 09:35
- Репутация: 0
Re: В который раз преобразование GPS в X Y
Ну надо чтобы Х был с запада на восток. А У - от экватора на север. Мне надо нарисовать на плоскости объекты с Гугла по их GPS координатам.
-
- Интересующийся
- Сообщения: 25
- Зарегистрирован: 08 июл 2009, 11:00
- Репутация: 0
Re: В который раз преобразование GPS в X Y
Ну если вам не нужна какаято особая проекция то рисуйте просто:
x:=round([Ширина вашей плоскости]/2+Lon*([Ширина вашей плоскости]/360))
y:=round([Ширина вашей плоскости]/2-Lat*(([Ширина вашей плоскости]/2)/180))
x:=round([Ширина вашей плоскости]/2+Lon*([Ширина вашей плоскости]/360))
y:=round([Ширина вашей плоскости]/2-Lat*(([Ширина вашей плоскости]/2)/180))
-
- Новоприбывший
- Сообщения: 8
- Зарегистрирован: 10 авг 2009, 09:35
- Репутация: 0
Re: В который раз преобразование GPS в X Y
Не то что бы не нужна особая, - нужна. Мне нужна привязка к системе СИ , к метрам, чтобы я знал координаты всех точек в метрах относительно базовой (0;0) и мог вычислять расстояние между ними уже в метрах по стандартной формуле.
-
- Интересующийся
- Сообщения: 25
- Зарегистрирован: 08 июл 2009, 11:00
- Репутация: 0
Re: В который раз преобразование GPS в X Y
x:=radiusa*lon/2;
y:=radiusa*Ln(Tan(PI/4+lat/2)*Power((1-exct*Sin(lat))/(1+exct*Sin(lat)),exct/2))/2;
Для гугла:
radiusa=6378137
exct=0
y:=radiusa*Ln(Tan(PI/4+lat/2)*Power((1-exct*Sin(lat))/(1+exct*Sin(lat)),exct/2))/2;
Для гугла:
radiusa=6378137
exct=0
-
- Новоприбывший
- Сообщения: 8
- Зарегистрирован: 10 авг 2009, 09:35
- Репутация: 0
Re: В который раз преобразование GPS в X Y
А в этой формуле надо тангенс ограничивать, а то у меня Y уходит за пределы диапазонов?
И еще, действительно ли это в метрах, почему именно так? Это расстояние в метрах от Гринвича получается?
И еще, действительно ли это в метрах, почему именно так? Это расстояние в метрах от Гринвича получается?
-
- Интересующийся
- Сообщения: 25
- Зарегистрирован: 08 июл 2009, 11:00
- Репутация: 0
Re: В который раз преобразование GPS в X Y
Нет, не надо.А в этой формуле надо тангенс ограничивать, а то у меня Y уходит за пределы диапазонов?
В метрахИ еще, действительно ли это в метрах
Не знаю, не я придумывал)почему именно так
[del]да[/del] Я дурак)Это расстояние в метрах от Гринвича получается?
ЗЫ Вы на чем пишете?
Последний раз редактировалось feya 13 авг 2009, 00:43, всего редактировалось 1 раз.
-
- Новоприбывший
- Сообщения: 8
- Зарегистрирован: 10 авг 2009, 09:35
- Репутация: 0
Re: В который раз преобразование GPS в X Y
На Delphi.feya писал(а):ЗЫ Вы на чем пишете?
Логарифм отрицательного числа дает -NAN
Например lat = 52.626
tan(pi/4 + lat/2) = -2.39953
ln(-2.39953) = - NAN
- Mavka
- Гуру
- Сообщения: 2060
- Зарегистрирован: 14 мар 2008, 17:36
- Репутация: 9
Re: В который раз преобразование GPS в X Y
Виноват, ошибся.
tan(pi/4 + lat/2), т.к. pi/4 то lat нужно в радианах; или pi/4 = 45 градусов
tan(pi/4 + lat/2), т.к. pi/4 то lat нужно в радианах; или pi/4 = 45 градусов
лангольеры под окном жрали время ом-ном-ном
-
- Интересующийся
- Сообщения: 25
- Зарегистрирован: 08 июл 2009, 11:00
- Репутация: 0
Re: В который раз преобразование GPS в X Y
Да, lon и lat конечно в радианах.
-
- Новоприбывший
- Сообщения: 8
- Зарегистрирован: 10 авг 2009, 09:35
- Репутация: 0
Re: В который раз преобразование GPS в X Y
А как перевести 52.626 в радианы? 52.626 взято из гугла. Я без понятия какие у них единицы, скорее всего DD.DDDDDD.
- Mavka
- Гуру
- Сообщения: 2060
- Зарегистрирован: 14 мар 2008, 17:36
- Репутация: 9
Re: В который раз преобразование GPS в X Y
radian = degree / 360 * (2 * pi)
2pi - полный оборот в радианах, соответствует 360 градусам
2pi - полный оборот в радианах, соответствует 360 градусам
лангольеры под окном жрали время ом-ном-ном
-
- Новоприбывший
- Сообщения: 8
- Зарегистрирован: 10 авг 2009, 09:35
- Репутация: 0
Re: В который раз преобразование GPS в X Y
Перевел в радианы - другое дело, все стало на свои места. Спасибо. А Гривнич что гдето в Польше чтоли. Потому как ноль по Х у меня где-то там( ну или на западе Польши точно не разберу)?
- Mavka
- Гуру
- Сообщения: 2060
- Зарегистрирован: 14 мар 2008, 17:36
- Репутация: 9
Re: В который раз преобразование GPS в X Y
Пожалуйста, будьте серьезней, вы задаете вопросы из школьного курса:
Гринвичский меридиан
Гринвичский меридиан
лангольеры под окном жрали время ом-ном-ном
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя