1、導入頭文件
#include
#include
#include“math3d.h"
2、實現main函數
intmain(intargc,constchar*argv[])
{
???//1.初始化一個GLUT庫
???glutInit(&argc, (char**)argv);
???//2.創建一個窗口并制定窗口名
???glutCreateWindow(“圓形");
???//3.注冊一個繪圖函數,操作系統在必要時刻就會對窗體進行重繪制操作
???//它設置了一個顯示回調(diplay callback),即GLUT在每次更新窗口內容的時候回自動調用該例程
???glutDisplayFunc(draw);
???//這是一個無限執行的循環,它會負責一直處理窗口和操作系統的用戶輸入等操作。(注意:不會執行在glutMainLoop()之后的所有命令。)
???glutMainLoop();
???return0;
}
3、實現draw繪制函數
voiddraw()
{
???//1.清屏顏色
???glClearColor(0.0f,0.0f,0.0f,1.0f);
???glClear(GL_COLOR_BUFFER_BIT);
???//開始渲染 指定填充方式 參考PPT圖
???glBegin(GL_LINE_LOOP);
???constintn =55;
???constfloatR =0.5f;
???constGLfloatPI =3.1415926f;
???for(inti =0; i < n; i++)
??? {
???????//X,Y
???????//X,Y (R * cos(2 * PI / n * i), R * sin(2 * PI / n * i)
???????glVertex2f(R *cos(2* PI / n * i), R *sin(2* PI / n * i));
??? }
???//結束渲染
???glEnd();
???glFlush();
}
公式:glVertex2f(R *cos(2* PI / n * i), R *sin(2* PI / n * i));
當n為55時,已經慢慢接近圓了。
總結:只是先嘗試一下,具體的函數還需要后面學習