2022年3月7日 星期一

Zfish week03

一: 

    1.前往 https://jsyeh.org/3dcg10/,下載[win32]。




    2.解壓縮後,執行Shapes.exe


    3.
        glColor3f —>顏色
        glVertex2f —>位置



二:茶壺顏色

    1.根據week01步驟,建立一個GLUT專案

    2.畫出一個黃色的茶壺。
        (程式碼如下)

#include <GL/glut.h>
void display()
{
    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );

    glColor3f(1, 1, 0); ///設定顏色(R,G,B)為黃色
    glutSolidTeapot( 0.3 ); ///畫出茶壺,大小為0.3

    glutSwapBuffers();
}

int main (int argc, char**argv)
{
    glutInit(&argc, argv );
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH );
    glutCreateWindow("week03的視窗"); ///建立視窗,名稱為"Week03的視窗"

    glutDisplayFunc( display );

    glutMainLoop();

    return 0;
}



三:三角形顏色

    1.根據week01步驟,建立一個GLUT專案

    2.根據第二點(茶壺)的程式碼做修改。
        (程式碼如下,藍色部分為修改的地方)

#include <GL/glut.h>
void display()
{
    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );

    glColor3f(1, 1, 0); 
    //glutSolidTeapot( 0.3 ); ///將原本畫茶壺的程式碼註解掉。

    glBegin(GL_TRIANGLES); ///開始(三點連成三角形)
      
        glColor3f(1.0f, 0.0f, 0.0f);   glVertex2f(0.0f,   1.0f);       
        glColor3f(0.0f, 1.0f, 0.0f);   glVertex2f(0.87f,  -0.5f);
        glColor3f(0.0f, 0.0f, 1.0f);   glVertex2f(-0.87f, -0.5f);
    
    glEnd(); ///結束

    glutSwapBuffers();
}

int main (int argc, char**argv)
{
    glutInit(&argc, argv ); 
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH );
    glutCreateWindow("week03的彩色三角形視窗"); ///建立視窗,名稱為"Week03的彩色三角形視窗"

    glutDisplayFunc( display );

    glutMainLoop();

    return 0;
}


沒有留言:

張貼留言