2023年2月22日 星期三

Lisa的電腦圖學 - week02

 ➤ Week02-1_GLUT_first

    1. 開啟CodeBlocks ,新增OpenGL專案,File ➝ New ➝ Project



     2. 選取GLUT Project ➝ Go ➝ Next


    3. 點選三個點,點選目錄在桌面,加上專案名字 week01-2_GLUT,Next ➝ Finish


    4. 點選week01-2_GLUT ➝ Sources ➝ main.c,匯入程式碼


    5. 上方點選執行 Build and run

    💬按鍵盤的+-,可控制圖形的圓滑程度

    6. 點選week01-1_OpenGL ➝ Sources ➝ main.c 複製以下程式碼,其他刪除
            #include <GL/glut.h>
            void display()
            {
                glColor3f(0, 1, 0);
                glutSolidTeapot( 0.5 );

                glColor3f(1, 1, 0);
                glutSolidTeapot( 0.3 );
                glutSwapBuffers();
            }
            int main(int argc, char *argv[])
            {
                glutInit(&argc, argv);
                glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);

                glutCreateWindow("GLUT Shapes");
                glutDisplayFunc(display);
                glutMainLoop();
            }


    7. 上方點選執行 Build and run



 ➤ Week02-2_GLUT_first
    1. 新增以下程式碼,並上方點選執行 Build and run
            glColor3f(0, 1, 0);
            glutSolidTeapot( 0.5 );
            glColor3f(1, 1, 0);
            glutSolidTeapot( 0.3 );




➤ Week02-3_GLUT_first
    1. 新增以下程式碼,並上方點選執行 Build and run
            glBegin(GL_POLYGON);
                glVertex2f( 0, 1);
                glVertex2f(-1,-1);
                glVertex2f(+1,-1);
            glEnd();




 ➤ Week02-4_GLUT_first
    1. 新增以下程式碼,並上方點選執行 Build and run
            glColor3f(1, 0, 0);     glVertex2f( 0, 1);        ///紅色的頂點
            glColor3f(0, 1, 0);     glVertex2f(-1,-1);        ///綠色的頂點
            glColor3f(0, 0, 1);     glVertex2f(+1,-1);       ///藍色的頂點




➤ Week02-2_GLUT_many_vertex

    1. 開啟CodeBlocks ,新增OpenGL專案,File ➝ New ➝ Project



     2. 選取GLUT Project ➝ Go ➝ Next


    3. 點選三個點,點選目錄在桌面,加上專案名字 week02-2_GLUT_many_vertex,Next ➝ Finish


    4. 點選 week02-2_GLUT_many_vertex ➝ Sources ➝ main.c,匯入程式碼
           #include <GL/glut.h>
           void display()
           {
               glColor3f(247/255.0, 247/255.0, 247/255.0);
               glBegin(GL_POLYGON);
               glVertex2f( 1, 1);
                   glVertex2f(-1, 1);
                   glVertex2f(-1,-1);
                   glVertex2f( 1,-1);
               glEnd();

               glColor3f(244/255.0, 209/255.0, 33/255.0);
               glBegin(GL_POLYGON);
                   glVertex2f( ( 45-100)/100.0 , -(134-100)/100.0 );
                   glVertex2f( ( 36-100)/100.0 , -(171-100)/100.0 );
                   glVertex2f( (108-100)/100.0 , -(179-100)/100.0 );
                   glVertex2f( (104-100)/100.0 , -(117-100)/100.0 );

               glEnd();
               glutSwapBuffers();
           }

           int main(int argc, char *argv[])
           {
               glutInit(&argc, argv);
               glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);

               glutCreateWindow("GLUT Shapes");
               glutDisplayFunc(display);
               glutMainLoop();
           }






➤ Week02-3_circle_cos_sin





沒有留言:

張貼留言