Вращение объекта вокруг наклонной оси - PullRequest
0 голосов
/ 05 ноября 2011

У меня есть координаты центральной точки.У меня также есть массив, называемый нормаль астероида, который, я предполагаю, является относительным вращением оси (его 3 числа от нуля до единицы).

Как я могу заставить объект вращаться вокруг этого объекта?Я не смог найти ни одной формулы, которая бы это делала.

Ответы [ 2 ]

0 голосов
/ 06 ноября 2011

Используйте матрицу вращения для оси и угла. Новая позиция p' точки p на объекте -

p' = center + R(angle, axis) * (p - center)

где R(angle, axis) - это матрица, которая вращается на angle вокруг axis, а center - это точка, через которую проходит ось. Таль Даром ответ тот же, только в нотации OpenGL.

0 голосов
/ 05 ноября 2011

Попробуйте это:

glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glTranslate(-x,-y,-z);
glRotate(angle,nx,ny,nz);
glTranslate(x,y,z);
...