Какой метод лучше для того, чтобы получить направление? - PullRequest
3 голосов
/ 14 февраля 2012

Я хочу получить направление в Android. Есть два метода.

Одним из них является датчик ориентации. Значение значения данных [0] представляет собой азимут: угол между магнитным северным направлением и осью y вокруг оси z (от 0 до 359). 0 = север, 90 = восток, 180 = юг, 270 = запад.

Другой - это GPS. Я могу использовать android.location.Location.getBearing (), чтобы получить направление движения в градусах к востоку от истинного севера.

Я использую оба этих метода одновременно, и нахожу, что значения сильно отличаются. Например, значение датчика ориентации равно 20, а значение азимута GPS равно 340. Почему есть различия? Что лучше?

Кстати, разница связана с разницей между магнитным севером и истинным севером? В географии они не одинаковы.

Ответы [ 2 ]

3 голосов
/ 14 февраля 2012

Я считаю, что разница в том, что GPS использует географический Северный / Южный полюс, а не магнитный. Чем дальше на север, тем больше разница с тем, где вы находитесь. Положение спутников GPS должно быть абсолютным, и использование колеблющейся точки отсчета, такой как магнитные полюсы, - это большая проблема.

Какой вы должны использовать: я бы использовал GPS при движении и компас, когда стою.

1 голос
/ 14 февраля 2012

Магнитные датчики показывают магнитный курс телефона, т. Е. Куда он указывает.магнитный север.GPS указал направление телефона относительно.истинный север, то есть направление движения или истинный путь.Если телефон движется по агонической линии (линия, где магнитное отклонение равно нулю, например, во Франции он проходит), и если телефон указывает в направлении движения, они должны быть одинаковыми (плюс / минус точность датчика).

...