Существует ли готовая формула для получения значений тангажа / крена из акселерометра iPhone 3GS X / Y / Z? - PullRequest
2 голосов
/ 08 июня 2010

Только что начал реализовывать проект на основе дополненной реальности, получил местоположение GPS, направление и две отсутствующие переменные для управления виртуальной камерой - Pitch / Roll.

Мне интересно, есть ли готовая формула, которую я могу объединить с проектом. Мог бы сэкономить мне много времени. Заранее спасибо.

Ответы [ 3 ]

2 голосов
/ 08 июня 2010

Я думаю этот пост об акселерометре iphone ответит на большинство ваших вопросов, включая пример кода.

0 голосов
/ 21 ноября 2010

Вы можете получить доступ к вращению устройства через CMMotionManager, который вычисляет радианы на основе необработанных данных (акселерометр, гироскоп и т. Д.). Убедитесь, что вы включили обновления датчика:


if (motionMng.deviceMotionAvailable && !motionMng.deviceMotionActive) {
    motionMng.deviceMotionUpdateInterval = 1.0 / 50.0;
    [motionMng startDeviceMotionUpdates];
}

Затем вращение доступа - pitch (x), roll (y) и yaw (z) - путем запроса объекта attitude:


CMDeviceMotion *motion = [motionMng deviceMotion];

if (motion != NULL) {

    float pitch = motion.attitude.pitch;
    float roll = motion.attitude.roll;
    float yaw = motion.attitude.yaw;

    NSLog(@"ROTATION: x:%f y:%f z:%f", pitch, roll, yaw);
}
0 голосов
/ 21 июня 2010

С тех пор я попал в проблему, поэтому очень подробный пост о решении можно прочитать здесь:

Получите углы наклона и крена из вектора акселерометра iPhone при gotoandplay.freeblog.hu

...