Как получить ориентацию андроида по событиям датчика гирсокопа? - PullRequest
0 голосов
/ 13 марта 2011

Я использую Android 2.3 на Nexus S и хочу получить ориентацию по событиям датчика гироскопа. Как гироскоп дает угловую скорость, как использовать это для получения ориентации устройства?

Также есть ли способ получить чисто линейные ускорения на оси телефона без вектора гравитации. Я ожидал этого от события датчика линейного ускорения, но только что нашел сообщение и источник Android, а также для датчика, который в настоящее время использует только акселерометр.

Так, каков наилучший способ объединить показания обоих аппаратных средств, чтобы получить чистое ускорение без гравитационных включений?

Спасибо.

1 Ответ

0 голосов
/ 04 апреля 2011

Почему вы хотите получить ориентацию с помощью гироскопа, поставляемого getOrientation () или getRotation () в более позднем API [2.2+], должно быть проще.В любом случае гироскоп полезен только для обнаружения изменений угловой ориентации, поэтому он не может сказать вам, какой путь вверх, если вы это подразумеваете под «ориентацией».

Но вы можете получить приблизительное изменениев угле от угловой скорости таким же образом вы получите изменение положения от линейной скорости: изменение угла = временной интервал x угловая скорость.

Гравитация эквивалентна для ускорения, поэтомуневозможно отличить их от «внутри телефона», вам просто нужно вычесть это способом, описанным в документации.

...