glTranslatef(0,0.1,0);
*但是只會往同一個方向移動,而且按到就會一直移動
->
#include<GL/glut.h>
float nowX=0, nowY=0;
void mouse (int button, int state, int x, int y)
{
nowX = (x-150)/150.0;
nowY = -(y-150)/150.0;
}
void display()
{
glClearColor(1,1,0,0);
glClear(GL_COLOR_BUFFER_BIT);
glPushMatrix(); //備份Matrix
glTranslatef(nowX, nowY, 0); // " 移動 "
glColor3f(1,0,0);
glutSolidTeapot(0.3);
glPopMatrix(); //還原Matrix
glutSwapBuffers();
}
int main(int argc,char**argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("hello 3D");
glutDisplayFunc(display);
glutMouseFunc(mouse);
glutMainLoop();
}
*滑鼠點到哪,物件就移動到哪
3. 畫圓形
glBegin(GL_POLYGON);
for(float angle=0; angle<3.14159265358979*2; angle+=0.1){
glVertex2f(0.2*cos(angle),0.2*sin(angle) );
}
glEnd();








沒有留言:
張貼留言