Я пытаюсь создать утилиту конвертера для координат широты / долготы.
Пожалуйста, посмотрите этот фрагмент кода:
...
//at this point the location variable has valid location information
String latDegrees = Location.convert(location.getLatitude(), Location.FORMAT_DEGREES);
String longDegrees = Location.convert(location.getLongitude(), Location.FORMAT_DEGREES);
String latMinutes = Location.convert(location.getLatitude(), Location.FORMAT_MINUTES);
String longMinutes = Location.convert(location.getLongitude(), Location.FORMAT_MINUTES);
String latSeconds = Location.convert(location.getLatitude(), Location.FORMAT_SECONDS);
String longSeconds = Location.convert(location.getLongitude(), Location.FORMAT_SECONDS);
Log.d("results ","lat "+location.getLatitude());
Log.d("results ","long "+location.getLongitude());
Log.d("results ","lat degrees "+latDegrees);
Log.d("results ","long degrees "+longDegrees);
Log.d("results ","lat min "+latMinutes);
Log.d("results ","long min "+longMinutes);
Log.d("results ","lat sec "+latSeconds);
Log.d("results ","long sec "+longSeconds);
...
Я получаю строки такого типа
results: lat aa.4919783
results: long bb.3432917
results: lat degrees aa.49198
results: long degrees bb.34329
results: lat min aa:29.5187
results: long min bb:20.5975
results: lat sec aa:29:31.12188
results: long sec bb:20:35.85012
(где я скрыл первые две цифры буквами)
Как видите,
- исходные значения имеют 7 десятичных цифр
- градусы имеют 5
- минуты имеют 4
- секунды имеют 5
Это правильно? Можно ли использовать эти строки там, где в качестве параметра необходимы широта и долгота? Это стандартная форма или могут потребоваться другие десятичные дроби?