2021年3月8日 星期一

𝔍𝔒𝔗𝔇-week03

 

 電腦圖學_week03

2021/03/08(一)

  今日的上課內容:

  1. 重新開啟範例程式並複製程式碼(opengl)
  2. 另存程式碼(4行)
  3. 解壓縮freeglut
  4. libfreeglut.a命名成libglut32.a
  5. 開啟新專案(glut)
  6. 刪除並留下display部分程式碼
  7. 留下精簡後的程式碼
  8. 產生三原色三角形
  9. 親手打造一個程式—實心茶壺
  10. 產生實心茶壺
  11. 圖解argv是什麼


今日的上課成果:
⬆️複製紅框中的程式碼

  • 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();
⬆️開啟新專案(glut的)
⬆️display部分程式碼
⬆️精簡後的程式碼


  • 記得引用
  • #include <GL/glut.h>
  •  
  •  
  •  
  • static void display(void)
  • {
  • //之前的程式碼
  •    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
  •   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[])
  • //設定GLUT的初始化
  • glutInit(&argc, argv);  
  • //顯示模式
  •  glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
  •  //開GLUT視窗
  •  glutCreateWindow("GLUT Shapes");
  • //顯示的函式
  •  glutDisplayFunc(display);
  •  
  •   //GLUT主要的迴圈,卡住不要結束
  •  glutMainLoop();
  •  }



⬆️上面程式的執行結果

  • #include <GL/glut.h> ///使用GLUT外掛
  •  
  • void display()
  • {
  • glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); ///清空
  •  
  •  glutSolidTeapot(0.3); ///實心茶壺
  •  
  •  glutSwapBuffers(); ///交換2倍的buffers
  •  }
  •  int main(int argc, char ** argv)
  •  {
  •  glutInit(&argc, argv); ///GLUT初始設定
  •  glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH); ///顯示模式
  •  glutCreateWindow("07050135_郭岳霖"); ///開窗
  •  
  •  glutDisplayFunc(display); ///等一下要顯示的函式
  •  
  •  glutMainLoop(); ///主要迴圈
  •  }

⬆️上面程式的圖示
⬆️上面程式的執行結果





⬆️圖解argv是什麼

沒有留言:

張貼留言

Week18期末作業(橘貓的跳舞熊熊)

 期末作業(橘貓的跳舞熊熊) 影片: https://youtu.be/R89tptMaQZw 程式碼: #include <opencv/highgui.h> #include <opencv/cv.h> #include <GL/glut.h...