顯示具有 02160934_蔡閎鈞 標籤的文章。 顯示所有文章
顯示具有 02160934_蔡閎鈞 標籤的文章。 顯示所有文章

2015年6月10日 星期三

Week16_02160934_蔡閎鈞 課堂練習

1.複習上禮拜所教的TRT將手臂綁在茶壺嘴上面

2.可以使用存檔的方式來記錄所動的軌跡

3.利用內插法來作出更簡潔的程式

2015年6月3日 星期三

2015年5月27日 星期三

02160934蔡閎鈞_week14_課堂練習

1.劃出一個茶壺並且打光

2.在劃出一個茶壺並且將握柄綁訂在壺嘴可以動

3.弄出一隻可以動的手臂

4.兩隻可以動的手筆



#include <GL/glut.h>
float angle=0,oldX=0,oldY=0;
void drawBody()
{
    glPushMatrix();
    glScalef(1,0.5,0.5);
    glutSolidCube(1);
    glPopMatrix();
}
void drawArm()
{
    glPushMatrix();
    glScalef(0.6,0.3,0.3);
    glutSolidCube(1);
    glPopMatrix();
}

void display()
{
    GLfloat pos[]={0,0,-1,0};
    glLightfv(GL_LIGHT0,GL_POSITION,pos);
    glEnable(GL_LIGHT0);
    glEnable(GL_LIGHTING);

    glEnable(GL_DEPTH_TEST);
    glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);

    glPushMatrix();
        glTranslatef(0.5,0.0,0);
        glRotatef(angle,0,0,1);
        glTranslatef(0.3,0,0);
        drawArm();
        glPushMatrix();
        glTranslatef(0.25,0.0,0);
        glRotatef(angle,0,0,1);
        glTranslatef(0.25,0,0);
        drawArm();
        glPopMatrix();
    glPopMatrix();
    glPushMatrix();
        glTranslatef(-0.5,0.0,0);
        glRotatef(-angle,0,0,1);
        glTranslatef(-0.25,0,0);
        drawArm();
        glPushMatrix();
        glTranslatef(-0.25,0.0,0);
        glRotatef(-angle,0,0,1);
        glTranslatef(-0.25,0,0);
        drawArm();
        glPopMatrix();
    glPopMatrix();
    drawBody();

    glFlush();
}
void timer(int t)
{
    glutTimerFunc(20,timer,t+1);
    //angle++;
    glutPostRedisplay();
}

void motion(int x,int y)
{
    angle-=y-oldY;
    oldY=y;oldX=x;
}
void mouse(int button, int state, int x,int y)
{
    if(state==GLUT_DOWN)
    {
        oldX=x;oldY=y;
    }
}

int main(int argc,char**argv)
{
    glutInit(&argc,argv);
    glutCreateWindow("GLUT");
    glutDisplayFunc(display);
    glutTimerFunc(20,timer,0);
    glutMouseFunc(mouse);
    glutMotionFunc(motion);
    glutMainLoop();
}

2015年5月20日 星期三

02160934_蔡閎鈞_week13

1.建立800*600的視窗

2.視窗收放的時候茶壺不會亂動

3.利用透視投影的方法來做運鏡

2015年5月6日 星期三

2015年4月29日 星期三

02160934_Week10_蔡閎鈞

1.先看看如何叫出二D的貼圖
比較難的地方是在一開始設定的地方
要在Project 裡的 Build option 裡面開始設定Linker setting
在經過很麻煩的經過~
就弄出來了

2.弄出一個2D的然後再弄一個3D的讓她共存

3.最後將2D的圖片貼上3D的茶壺上

2015年4月8日 星期三

蔡閎鈞_week07_課堂練習


1.利用鍵盤可以寫出字串


2.可以利用滑鼠案的時候發出聲響 


3.可以利用鍵盤來發出Do Re Mi 的聲音

2015年3月25日 星期三

蔡閎鈞_Week05_如何畫出三滴圖形

很開心今天學了利用3D的點線面圖形
代表著我們可以做出3D的飛機
覺得非常的厲害
以及新奇


1.學會方形旋轉


2.長方形旋轉

3.已經可以利用滑鼠來旋轉



2015年3月18日 星期三

02160934_蔡閎鈞_week04


3D加選轉

#include <GL/glut.h>
float angle=0;
void display()
{
    glClear(GL_COLOR_BUFFER_BIT); ///清畫面
    glPushMatrix();///備份matrix
        glTranslatef(-0.04,0,0);///移動
        glRotatef(angle,1,1,0);///旋轉, 對(1,1,0)軸 轉動angle


        glutWireTorus(0.2,0.7,50,100);
    glPopMatrix();

    glutSolidTeapot(0.2);

    glFlush();///畫面衝出去
    angle+=0.1;///angle每次加一點點
}

int main(int argc, char **argv)
{
    glutInit(&argc,argv);
    glutCreateWindow("02160934Hw");
    glutDisplayFunc(display);///要重劃畫面display時,也去呼叫display();
    glutIdleFunc(display);///閒閒沒事時, 去呼叫display();
    glutMainLoop();

}

2015年3月11日 星期三

2015年3月4日 星期三

02160934_蔡閎鈞_第二週課堂作業


十行程式碼

五行程式碼

零行程式碼

尚未掛載外掛程式


在這堂課裡,我學會了一個英文單字Graphic=圖學。
可以用簡單的東西寫出看起來很厲害的程式。讚!