Contents

조회 수 9069 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
#include<stdlib.h>
#include<GL/glut.h>

GLfloat vertices[][2] = {
        {-0.1, 0.1}, {-0.1, -0.1}, {0.1, -0.1}, {0.1, 0.1}
};

int R=120, G=0, B=120;
double rec_size=1;

void drawSquare(){
        int i;
        glColor3ub( R, G, B );
        glBegin(GL_POLYGON);
                for(i=0; i<4; i++) glVertex3fv(vertices[i]);
        glEnd();
}

void display(void){
        glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
        glLoadIdentity();
        glScalef(rec_size, rec_size, rec_size);
        drawSquare();

        glFlush();
        glutSwapBuffers();
}

void mouse(int btn, int state, int x, int y){
        if(btn==GLUT_LEFT_BUTTON && state==GLUT_DOWN && rec_size<32){
                R+=20;        B-=20;
                rec_size *= 2;
        }
        if(btn==GLUT_RIGHT_BUTTON && state==GLUT_DOWN && rec_size>0.1){
                R-=20;        B+=20;
                rec_size /= 2;
        }
        
        glutPostRedisplay();
}

void myReshape(int w, int h){
        glViewport(0, 0, w, h);
        glMatrixMode(GL_PROJECTION);
        glLoadIdentity();

        glOrtho(-2.0, 2.0, -2.0 * (GLfloat)h / (GLfloat)w, 2.0 * (GLfloat)h / (GLfloat)w, -10.0, 10.0);
        glMatrixMode(GL_MODELVIEW);
}

void main(int argc, char **argv){
        glutInit(&argc, argv);

        glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
        glutInitWindowSize(500, 500);
        glutCreateWindow("Square!!");

        glutReshapeFunc(myReshape);
        glutDisplayFunc(display);
        glutMouseFunc(mouse);

        glutMainLoop();
}


?

  1. [c] 시간 관련 함수 설명과 예제..

    Date2003.04.23 CategoryDevelop Byhooni Views11518
    Read More
  2. [c] 스토리지 클래스(변수)

    Date2003.04.23 CategoryDevelop Byhooni Views8197
    Read More
  3. [c] 포인터와 함수포인터에 대해..

    Date2003.04.23 CategoryDevelop Byhooni Views8019
    Read More
  4. [c] 구조체의 설명과 예제..

    Date2003.04.23 CategoryDevelop Byhooni Views8373
    Read More
  5. [c] 프로세스간의 통신(파이프)

    Date2003.04.23 CategoryDevelop Byhooni Views6891
    Read More
  6. [jsp] 정적/동적(차트생성) 이미지 전달

    Date2003.04.23 CategoryDevelop Byhooni Views7307
    Read More
  7. [c] OpenGL 직사각형(2D) 크기 확대/축소

    Date2003.04.23 CategoryDevelop Byhooni Views9069
    Read More
  8. [c++] 더블 링크리스트(linked list) 학습용 초간단 단어장

    Date2003.04.23 CategoryDevelop Byhooni Views9323
    Read More
  9. [c] 구조체/파일 입출력 프로그램

    Date2003.04.23 CategoryDevelop Byhooni Views7063
    Read More
  10. [c] 컴파일러 선행처리기 따라하기..

    Date2003.04.23 CategoryDevelop Byhooni Views6681
    Read More
  11. [c] 싱글, 더블 링크리스트(linked list)로 만든 예제..

    Date2003.04.23 CategoryDevelop Byhooni Views6737
    Read More
  12. [c] fgets() 함수 사용하기..

    Date2003.04.23 CategoryDevelop Byhooni Views7818
    Read More
Board Pagination Prev 1 ... 4 5 6 7 8 9 10 11 12 13 ... 71 Next
/ 71