Android-геопункт от координат NE - PullRequest
1 голос
/ 23 июня 2011

В приложении для Android я хотел бы установить геопоинт из координат в следующем формате 50 27.858N, 004 57.146E. Я прочитал в следующей теме , как преобразовать координаты в формат GeoPoint? , который мне просто нужно использовать:

    new GeoPoint((int)(27.858*1E6),(int)(57.146*1E6)); 

за исключением того, что это отправляет меня в Иран, и запрашиваемый пункт находится в Бельгии, как вы можете видеть здесь: http://maps.google.com/maps?geocode=&q=50+27.858N,004+57.146E

Любая помощь будет приветствоваться, спасибо заранее!

1 Ответ

1 голос
/ 23 июня 2011

Используемые цифры - градусы минут, т. Е. 50 градусов + 27,858 минут, для геопункта это необходимо в градусах, которые для этого местоположения составляют 50,464300 широты, lng 4,952433.Вы можете просто преобразовать их в целые числа, чтобы сэкономить, выполнив вычисление с плавающей запятой, которое будет:

new GeoPoint(5046430,4952433);

Каждый градус разбит на 60 частей, каждая часть составляет 1/60 градуса.Эти части называются минутами, поэтому для преобразования 50 градусов в 27,858 минут у вас будет 50 полных градусов + 27,857 * 1/60 градуса (27,857 * 1/60 = 0,4643), поэтому ваш лат составляет 50,46430.

...