Top.Mail.Ru
Ответы

Нужна формула расчёта DMS(GPS) Широта&Долгота координат по Широта&Долгота [Внутри]

Нужно то, что представлено на этом сайте:
http://www.latlong.net/lat-long-dms.html или http://www.latlong.net/convert-address-to-lat-long.html
Например, имеем: Lat Long (55.755826, 37.6173)
Нужно получить: 55° 45' 20.9736'' N 37° 37' 2.28'' E
Рылся в гугле, что-то ничего путного не нашёл. Вероятнее всего, запрос неправильно задаю.

Попутно нужно определить часовой пояс (GMT) по одним из этих координат. Инфа по этому поводу также была бы нелишней.

PS: В "Компьютеры, Связь" что-то тишина...

Кто поможет, заранее благодарю.

По дате
По рейтингу
Аватар пользователя
Новичок
8лет

1. Целая часть является градусами, выделяешь дробную часть из 55.755826, то есть 0.755826
2. Умножаешь на 60, целая часть является минутами, выделяешь дробную часть.
3. Умножаешь на 60 - это секунды
Для северного и восточного полушария соответственно это работает как есть. Если первая координата меньше 0, тогда вычисляешь значение по модулю, а полушарие помечаешь как южное, то есть S вместо N. Если вторая координата 180 градусов и больше (по идее такого быть не должно, но мало ли какие стандарты существуют), то отнимаешь 180 и пишешь, мол, полушарие западное (то есть W вместо E). Если вторая координата отрицательная, тогда аналогично первому случаю вычисляешь значение по модулю и помечаешь полушарие западным.
Что касается часовых поясов, здесь всё существенно сложнее. Да, грубо можно определять через координаты, зная, что один час соответствует 15 градусам второй координаты, на деле же часовые пояса расположены очень неровно, и один меридиан может проходить через три часовых пояса, так что придётся обращаться к какому-то стороннему сервису типа этого