Bresenham 画圆算法适合于生成整圆,它使用8路对称法,只计算出90°~45°内的点,移动方向为+x,-y。
递推公式:
完整代码:
加上Sleep函数,减慢画圆速度,以便观察画圆过程。
#include<GL/glut.h>
#include<windows.h>
void setPixel(int x, int y)
{
glColor3f(0.0, 0.0, 1.0);
glPointSize(2.0f);
glBegin(GL_POINTS);
glVertex2f(x, y);
glEnd();
glFlush();
}
void CirclePoint(int x0, int y0,int x,int y){
setPixel(x0 + x, y0 + y)