2017年3月14日 星期二

04160214_第四周

hw01
    (1)hw2.評分3個最好作品
     解開壓縮 點list.html crtl+-調大小 選最好作品

hw02
畫出正圓形
圓上頂點皆為cos(x),sin(y)
#include <math.h>
static void display(void)
{
    glBegin(GL_POLYGON);
    {
        for(float angle=0;angle<=3.1415926*2;angle+=0.1)
        {
            glVertex2f(cos(angle),sin(angle));
        }
        glEnd();
    }
    glutSwapBuffers();
}
hw03
用滑鼠點選換圓形顏色
#include <stdio.h>(因為有printf)
void mouse(int buttom,int state,int x,int y)
{
    printf("%d %d %d %d\n",buttom,state,x,y);
    glColor3f(1,x/300.0,y/300.0);
}
int main(int argc,char *argv[])
{
        .....
    glutMouseFunc(mouse);
}

hw04
用滑鼠拖曳變顏色
void motion(int x,int y)
{
    glColor3f(1,x/300.0,y/300.0);
    glutPostRedisplay();
}
int main(int argc,char *argv[])
{
    glutMotionFunc(motion);
}


hw05
畫小精靈
設一個可拉的嘴巴 float mouth=0;
清掉之前的格式
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
設一個三角形組成的扇形
glBegin(GL_TRINGLE_FAN);
頂點(0,0);
float mouth=0;
static void display(void)
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glBegin(GL_TRIANGLE_FAN);
    glVertex2f(0,0);
    {
        for(float angle=0 +mouth;angle<=3.1415926*2-mouth;angle+=3.1415926/100)
        {
            glVertex2f(cos(angle),sin(angle));
        }
        glEnd();
    }
    glutSwapBuffers();
}



沒有留言:

張貼留言