Iphone-SDK: акселерометр x, z на 360 градусов?

Как можно взять значения x, z, полученные акселерометром, и перевести их как значения, которые будут представлять точку на 360 градусов вращения iphone? (ЛАНДШАФТНЫЙ) он может быть от -2 до 2 (0 для средней точки) и может быть от 0 до 360, если он представляет значение для всего вращения iphone.

Мне это нужно для ландшафтной игры, которую я делаю, какое решение будет лучшим в этом случае?


person Alon Amir    schedule 14.01.2010    source источник


Ответы (1)


Используйте функцию atan2(). Чтобы получить значение в градусах:

#include <math.h>

...

float degrees = atan2(x, y) * 180 / 3.14159;
person Frank Schmitt    schedule 14.01.2010
comment
Это почти так же идеально, как я: atan2(AccX,Accz) * 180 / 3.14159 одна проблема: максимальное/минимальное значение, когда экран направлен вверх, как мне изменить его, чтобы это значение было, когда iphone повернут ко мне спиной ? - person Alon Amir; 15.01.2010