조회 수 9070 추천 수 0 댓글 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();
}

?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
853 Develop [unix] 로그파일 정리 쉘스크립트 hooni 2014.02.19 10806
852 Develop [html] SVG(Scalable Vector Graphics) 간단 정리 hooni 2014.02.13 8834
851 Database [sql] 쿼리로 문자열 검색해서 일괄 치환하기 hooni 2014.02.13 9973
850 Develop [php] XE 관리자 IP대역 설정 오류 해결법 hooni 2014.02.10 10778
849 Develop [c] 64bit 머신에서 inet_ntoa() 사용시 Segment fault 대처 방법법 hooni 2014.02.08 14237
848 Develop [ios] NSString 간단한 정규식 사용법 hooni 2014.01.28 18223
847 Develop [ios] iOS 6.0 이상 회전 하기 (이전 버전과 비교 변경 부분) file hooni 2014.01.27 34188
846 Develop [ios] 네트워크 인디케이터(NetworkActivityIndicator) 작동 file hooni 2014.01.24 12493
845 Develop [js] 주소표시줄 URL 읽어오기 (변경까지) secret hooni 2014.01.21 1
844 System/OS [linux] CentOS 6.x Cati 설치 (yum) hooni 2014.01.17 48596
843 Develop [ios] UIWebView에서 NSURLRequest에 Cookie 실어 보내기 hooni 2014.01.16 14861
842 Develop [ios] UIWebView 쿠키 유지 hooni 2014.01.16 11708
841 Develop [php] substr() 한글 자를 때 깨짐 방지 hooni 2014.01.09 20367
840 System/OS [linux] iconv를 이용하여 euc-kr 문서를 utf-8로 대량으로 변환하기 file hooni 2014.01.09 12221
839 Develop [ios] UIButton multi-line iOS7 hooni 2014.01.09 11437
838 Etc iOS 에서 쓸만한 오프라인 구글지도 찾기 hooni 2014.01.06 16039
Board Pagination Prev 1 ... 19 20 21 22 23 ... 74 Next
/ 74