2019年3月7日 星期四

uh-oh~可恩的上課筆記 Week3

啦啦啦~上課啦!!

去網站:http://www.cmlab.csie.ntu.edu.tw/~jsyeh/3dcg10/
下載 1.windows.zip  2. data.zip 3.glut32.dll

windows.zip 解壓縮 抓 data、glut32.dll到資料夾裡


                                 windows檔案中開起shape

邊視窗按右鍵 可改變顏色出現圓點

右視窗的綠值可以改變顏色深淺線的角度


視窗按右鍵可選擇點、線、面

右鍵詳情看:

........................................................................................................................................................

跟上個禮拜一樣開OpenGL和GLUT
標準版茶壺




#include <GL/glut.h>
void display()
{
    glutSolidTeapot( 0.3 );
    glutSwapBuffers();
}
int main(int argc, char**argv)
{
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
    glutCreateWindow("06161110_Week03!!");
    glutDisplayFunc(display);
    glutMainLoop();

}




特色版茶壺



#include <GL/glut.h>
void display()
{
    glColor3f(0/255.0,84/255.0,45/255.0);
    glutSolidTeapot( 0.3 );
    glutSwapBuffers();
}
int main(int argc, char**argv)
{
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
    glutCreateWindow("06161110_Week03!!");
    glutDisplayFunc(display);
    glutMainLoop();
}





#include <GL/glut.h>

void display()

{
    glColor3f(1,0,1);

    glutSolidTeapot( 0.3 );

    glutSwapBuffers();

}

int main(int argc, char**argv)

{

    glutInit(&argc,argv);

    glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);

    glutCreateWindow("06161110_Week03!!");

    glutDisplayFunc(display);

    glutMainLoop();

}

回家作業:嗯....有特色的啦啦熊

#include <GL/glut.h>

void display()

{
    glBegin(GL_POLYGON);
    glColor3f(255/255.0,255/255.0,89/255.0);
    glVertex2f((0-100)/100.0,-(1-100)/100.0);
    glVertex2f((0-100)/100.0,-(200-100)/100.0);
    glVertex2f((200-100)/100.0,-(200-100)/100.0);
    glVertex2f((200-100)/100.0,-(0-100)/100.0);
    glEnd();



    glBegin(GL_POLYGON);
    glColor3f(166/255.0,83/255.0,0/255.0);
    glVertex2f((62-100)/100.0,-(47-100)/100.0);
    glVertex2f((27-100)/100.0,-(85-100)/100.0);
    glVertex2f((16-100)/100.0,-(144-100)/100.0);
    glVertex2f((40-100)/100.0,-(170-100)/100.0);
    glVertex2f((150-100)/100.0,-(170-100)/100.0);
    glVertex2f((179-100)/100.0,-(139-100)/100.0);
    glVertex2f((165-100)/100.0,-(85-100)/100.0);
    glVertex2f((130-100)/100.0,-(47-100)/100.0);
    glEnd();

    glBegin(GL_POLYGON);
    glColor3f(166/255.0,83/255.0,0/255.0);
    glVertex2f((63-100)/100.0,-(48-100)/100.0);
    glVertex2f((46-100)/100.0,-(32-100)/100.0);
    glVertex2f((21-100)/100.0,-(32-100)/100.0);
    glVertex2f((2-100)/100.0,-(60-100)/100.0);
    glVertex2f((27-100)/100.0,-(86-100)/100.0);
    glEnd();

    glBegin(GL_POLYGON);
    glColor3f(243/255.0,180/255.0,12/255.0);
    glVertex2f((43-100)/100.0,-(63-100)/100.0);
    glVertex2f((30-100)/100.0,-(52-100)/100.0);
    glVertex2f((17-100)/100.0,-(50-100)/100.0);
    glVertex2f((6-100)/100.0,-(52-100)/100.0);
    glVertex2f((2-100)/100.0,-(60-100)/100.0);
    glVertex2f((25-100)/100.0,-(83-100)/100.0);
    glEnd();

    glBegin(GL_POLYGON);
    glColor3f(166/255.0,83/255.0,0/255.0);
    glVertex2f((129-100)/100.0,-(46-100)/100.0);
    glVertex2f((144-100)/100.0,-(30-100)/100.0);
    glVertex2f((170-100)/100.0,-(30-100)/100.0);
    glVertex2f((185-100)/100.0,-(58-100)/100.0);
    glVertex2f((163-100)/100.0,-(83-100)/100.0);
    glEnd();




    glBegin(GL_POLYGON);
    glColor3f(243/255.0,180/255.0,12/255.0);
    glVertex2f((146-100)/100.0,-(63-100)/100.0);
    glVertex2f((157-100)/100.0,-(53-100)/100.0);
    glVertex2f((167-100)/100.0,-(47-100)/100.0);
    glVertex2f((181-100)/100.0,-(47-100)/100.0);
    glVertex2f((185-100)/100.0,-(58-100)/100.0);
    glVertex2f((164-100)/100.0,-(82-100)/100.0);
    glEnd();

     glBegin(GL_POLYGON);
    glColor3f(53/255.0,53/255.0,53/255.0);
    glVertex2f((49-100)/100.0,-(120-100)/100.0);
    glVertex2f((49-100)/100.0,-(132-100)/100.0);
    glVertex2f((57-100)/100.0,-(135-100)/100.0);
    glVertex2f((63-100)/100.0,-(133-100)/100.0);
    glVertex2f((65-100)/100.0,-(127-100)/100.0);
    glVertex2f((66-100)/100.0,-(122-100)/100.0);
    glVertex2f((60-100)/100.0,-(117-100)/100.0);
    glVertex2f((53-100)/100.0,-(117-100)/100.0);
    glEnd();



    glBegin(GL_POLYGON);
    glColor3f(53/255.0,53/255.0,53/255.0);
    glVertex2f((135-100)/100.0,-(112-100)/100.0);
    glVertex2f((143-100)/100.0,-(115-100)/100.0);
    glVertex2f((145-100)/100.0,-(125-100)/100.0);
    glVertex2f((138-100)/100.0,-(131-100)/100.0);
    glVertex2f((133-100)/100.0,-(131-100)/100.0);
    glVertex2f((128-100)/100.0,-(127-100)/100.0);
    glVertex2f((128-100)/100.0,-(118-100)/100.0);
    glVertex2f((132-100)/100.0,-(114-100)/100.0);
    glEnd();


    glBegin(GL_POLYGON);
    glColor3f(253/255.0,253/255.0,253/255.0);
    glVertex2f((87-100)/100.0,-(120-100)/100.0);
    glVertex2f((107-100)/100.0,-(120-100)/100.0);
    glVertex2f((117-100)/100.0,-(128-100)/100.0);
    glVertex2f((123-100)/100.0,-(138-100)/100.0);
    glVertex2f((120-100)/100.0,-(146-100)/100.0);
    glVertex2f((112-100)/100.0,-(157-100)/100.0);
    glVertex2f((86-100)/100.0,-(158-100)/100.0);
    glVertex2f((73-100)/100.0,-(147-100)/100.0);
    glVertex2f((72-100)/100.0,-(132-100)/100.0);
    glVertex2f((85-100)/100.0,-(120-100)/100.0);
    glEnd();

    glBegin(GL_POLYGON);
    glColor3f(53/255.0,53/255.0,53/255.0);
    glVertex2f((90-100)/100.0,-(129-100)/100.0);
    glVertex2f((89-100)/100.0,-(133-100)/100.0);
    glVertex2f((90-100)/100.0,-(133-100)/100.0);
    glVertex2f((94-100)/100.0,-(135-100)/100.0);
    glVertex2f((94-100)/100.0,-(139-100)/100.0);
    glVertex2f((93-100)/100.0,-(145-100)/100.0);
    glVertex2f((83-100)/100.0,-(147-100)/100.0);
    glVertex2f((86-100)/100.0,-(150-100)/100.0);
    glVertex2f((97-100)/100.0,-(143-100)/100.0);
    glVertex2f((106-100)/100.0,-(148-100)/100.0);
    glVertex2f((111-100)/100.0,-(147-100)/100.0);
    glVertex2f((111-100)/100.0,-(143-100)/100.0);
    glVertex2f((103-100)/100.0,-(139-100)/100.0);
    glVertex2f((94-100)/100.0,-(135-100)/100.0);
    glVertex2f((99-100)/100.0,-(135-100)/100.0);
    glVertex2f((102-100)/100.0,-(133-100)/100.0);
    glVertex2f((101-100)/100.0,-(129-100)/100.0);
    glVertex2f((99-100)/100.0,-(127-100)/100.0);
    glVertex2f((96-100)/100.0,-(126-100)/100.0);
    glVertex2f((91-100)/100.0,-(127-100)/100.0);
    glEnd();
    glutSwapBuffers();
}

int main(int argc, char**argv)

{

    glutInit(&argc,argv);

    glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);

    glutCreateWindow("06161110_Week03!!");

    glutDisplayFunc(display);

    glutMainLoop();


}




沒有留言:

張貼留言