需加
glPushMatrix();//備分
glPopMatrix();//還原
在移動,旋轉,放大縮小之外
#include <GL/glut.h>
void display()
{
glColor3f(1,0,1);
//glutSolidTorus(0.3,0.7,50,50);//Solid是實心
glPushMatrix();
glutWireTorus(0.3,0.7,50,50);//Wire是空心(甜甜圈)
glTranslatef(0.3,0.2,0.8);//移動
glPopMatrix();
glutSolidTeapot(0.2);
glFlush();
}
int main(int argc, char **argv)
{
glutInit(&argc, argv);
glutInitWindowSize(501,501);
glutCreateWindow("02160562");
glutDisplayFunc(display);
glutMainLoop();
}
#include <GL/glut.h>
float angle=0;//設定一個圖案的參數
void display()
{
glClear(GL_COLOR_BUFFER_BIT);
//glutSolidTorus(0.3,0.7,50,50);//Solid是實心
glPushMatrix();
glTranslatef(-0.04,0,0);//移動
glRotatef(angle, 1,1,0); // angle跟著(1,1,0)軸 旋轉
glutWireTorus(0.3,0.7,50,50);//Wire是空心(甜甜圈)
glutSolidTeapot(0.2);
glPopMatrix();
glFlush();
angle+=0.1; //旋轉速度
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitWindowSize(501,501);
glutCreateWindow("02160562");
glutDisplayFunc(display);
glutIdleFunc(display);
glutMainLoop();
}
沒有留言:
張貼留言