Вы пытаетесь создать программу для 3D мыши для iPhone? (Их уже несколько.) Можете ли вы точно описать, какому движению пользователя вы хотите соответствовать какому действию?
Самое простое, что можно сделать, это получить высоту тона устройства, взяв арккосинус точечного произведения вектора ускорения с (0, 0, 1000).
Если вы пытаетесь реализовать устройство, в котором скольжение iPhone вперед и назад через пространство перемещает указатель назад и вперед по экрану, это будет трудно, потому что это потребует относительно жестких движений рук для создания больших ускорений по сравнению гравитационному ускорению. МЭМС-акселерометры, такие как тот, что в iPhone, хороши для измерения направления гравитации, но довольно слабы для измерения фактического ускорения самого устройства.
Если вы немного опишите ваше заявление, я мог бы дать вам более конкретные указания.
Существует несколько различных способов представления пространственных вращений, но кватернионы очень популярны в сообществе программистов игр. Поиск Google дает вам несколько ссылок на некоторые учебники. GamaSutra one - хорошее место для начала.
http://www.gamasutra.com/features/19980703/quaternions_01.htm
http://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation
http://www.flipcode.com/documents/matrfaq.html