澳大利亚简史:opengl旋转问题(初级)

来源:百度文库 编辑:中科新闻网 时间:2024/05/03 04:50:01
我想将一个圆柱旋转两次,例如第一次是绕x轴转60,然后再绕y轴转20,但都是相对原来的坐标,该这么办?
另外有没有画椭球的命令?
由于第一次旋转改变了坐标轴,所以第二次旋转没有按想像的转,不得已我采用了计算轴,一次旋转:glRotatef(angle, nx0.0f,ny);请问是否可以通过两次旋转达到同样的目的吗?另外能否给出一个画椭球的例子,谢谢,将追加10分

opengl旋转函数有二:
void glRotated(
GLdouble angle,
GLdouble x,
GLdouble y,
GLdouble z
);

void glRotatef(
GLfloat angle,
GLfloat x,
GLfloat y,
GLfloat z
);

glPushMatrix();
glRotatef( 60.0f, 1.0f, 0.0f,0.0f);
glPopMatrix();
glRotatef( 20.0f, 0.0f, 1.0f,0.0f);
glBegin(GL_...);
....
glEnd();
glPopMatrix();
glPopMatrix();
---------------------------
没有画椭球的命令
画椭球要自己离散球表面,然后画一个个空间小三角形或多边形。用循环语句,不难。