2017年3月21日 星期二

04160711 3/21

1.先做茶壺

#include <GL/glut.h>
void display()
{

        glutSolidTeapot(0.3);
        glutSwapBuffers();

}
int main(int argc, char *argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);

    glutCreateWindow("GLUT Shapes");
    glutDisplayFunc(display);

    glutMainLoop();

}
2.

#include <GL/glut.h>
void display()
{
        glPushMatrix();//備份起來
        glTranslated(0,1,0);
        glutSolidTeapot(0.3);
        glPopMatrix();//還原回去
        glutSwapBuffers();

}
int main(int argc, char *argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);

    glutCreateWindow("GLUT Shapes");
    glutDisplayFunc(display);

    glutMainLoop();

}
3.宣告
4.滑鼠上去會動

#include <GL/glut.h>
float mouseX=0,mouseY=0;//宣告
void display()
{
        glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
        glPushMatrix();//備份起來
        glTranslated(mouseX,mouseY,0);
        glutSolidTeapot(0.3);
        glPopMatrix();//還原回去
        glutSwapBuffers();

}
void motion(int x,int y )
{

        mouseX=(x-150)/150.0;
        mouseY=-(y-150)/150.0;
        glutPostRedisplay();
}
int main(int argc, char *argv[])
{
    glutInit(&argc, argv);
    glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);

    glutCreateWindow("GLUT Shapes");
    glutDisplayFunc(display);
    glutMotionFunc(motion);

    glutMainLoop();

}









沒有留言:

張貼留言