我在原点有一架飞机。
glBegin(GL_POLYGON);
glVertex3f(-10.0, -10.0,0.0);
glVertex3f(10.0, -10.0, 0.0);
glVertex3f(10.0, 10.0, 0.0);
glVertex3f(-10.0, 10.0, 0.0);
glEnd();
比我试图将此平面旋转为新法线1 0 0。
我明白要计算两个法线之间的角度,我需要找到旧的法线。我怎样才能找到旧的常态?当我发现旧法线时,我必须输入新法线以进行旋转,例如glRotatef(angle,1,0,0)
?
答案 0 :(得分:0)
所有顶点都位于XY平面内,因此法线仅在Z方向(0,0,1)或(0,0,-1)。如果你想旋转多边形以指向X方向的法线,你需要绕Y轴旋转90度,glRotatef(90.0f,0,1,0)或glRotatef(-90.0f,0,1, 0)。