2012-02-14 6 views
3

Я хочу получить направление в Android. Существует два метода.Какой метод лучше, чтобы получить направление?

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

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

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

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

ответ

3

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

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

+0

Хорошее объяснение. Получил разницу !! – Mahe

1

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