(1)白色圈圈經過一段時間可以自動變更背景顏色
(1-1)~(1-2)實體變色
(1-3)~(1-4)線體變色
(2)白色正方形經過一段時間可以自動開始旋轉
(2-3)轉動後反轉
(1)程式碼:
轉動的程式碼
#include <GL/glut.h>
int angle=0;
void display(){
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glPushMatrix();
glRotatef(angle,0,0,1);
glutSolidCube(0.3);///一個正方形
#include <GL/glut.h>
int angle=0;
void display(){
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glPushMatrix();
glRotatef(angle,0,0,1);
glutSolidCube(0.3);
glPopMatrix();
glutSwapBuffers();
}
int diff=1;///加一個判斷用的整數
void timer(int t){
glutTimerFunc(20,timer,t+1);///(速度,使用的函式,參數)
angle+=diff;///(角度旋轉)
if(angle>180)diff=-diff;///超過180度,開始反轉
if(angle<0)diff=-diff;
display();
}
int main(int argc,char** argv){
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
glutCreateWindow("week14 timer");
glutDisplayFunc(display);
glutTimerFunc(1000,timer,0);///(定時,函式,參數)
glutMainLoop();
}






沒有留言:
張貼留言