Вращение куба (с использованием opengl - Iphone)

Я пишу приложение для iphone, в котором мне нужно повернуть куб. Вращение по вертикальной и горизонтальной оси работает нормально. Кроме того, вращение куба из нижнего правого в верхний левый и из верхнего левого в нижний правый угол работает нормально (я использую glrotateef (angle, 1.0, 1.0, 0.0) для вращения из верхнего левого угла в нижний правый).

Проблема здесь в том, что я хочу повернуть изображение снизу-слева вверх-вправо и сверху-справа в нижний левый угол. И я не мог найти решения. Я пробовал разные подходы, например

glRotateef (angle, -1.0, -1.0, 0.0) glRotateef (angle, -1.0, -1.0, 0.0) и т.д .. Все они не работают. Пожалуйста, помогите мне в этом (какое точное вращение мне нужно использовать). Заранее спасибо.


person Kumar D    schedule 31.07.2009    source источник


Ответы (2)


Вы пробовали glRotatef (angle, -1.0, 1.0, 0.0) или glRotatef (angle, 1.0, -1.0, 0.0)?

person erelender    schedule 31.07.2009
comment
Большое спасибо :) это сработало. Я боролся с этим последние 3 дня. Теперь я могу двигаться вперед :) Еще раз спасибо. - person Kumar D; 31.07.2009

вращение вокруг отдельной оси может быть выполнено следующим образом:

 glRotatef(angle, 1.0, 0.0, 0.0)   //rotate around x axis
 glRotatef(angle, 0.0, 1.0, 0.0)   //rotate around y axis
 glRotatef(angle, 0.0, 0.0, 1.0)   //rotate around z axis

Будьте внимательны, выполняя более одного вращения одновременно. (так что все, кроме 3 выше, или их сочетание). Порядок вращения действительно важен. Если все сделано неправильно, они могут создать 'блокировку подвеса'.

person Toad    schedule 31.07.2009