#include <windows.h>
#include <gl/glut.h>
#include "stdio.h"
int m_PointNumber = 0; //动画时绘制点的数目
int m_DrawMode = 1; //绘制模式 1 DDA 算法画直线
// 2 中点 Bresenham 算法画直线
// 3 改进 Bresenham 算法画直线
// 4 八分法绘制圆
// 5 四分法绘制椭圆
//绘制坐标线
void DrawCordinateLine(void)
{
int i = -250 ;
//坐标线为黑色
glColor3f(0.0f, 0.0f ,0.0f);
glBegin(GL_LINES);
for (i=-250;i<=250;i=i+10)
{
glVertex2f((8oat)(i), -250.0f);
glVertex2f((8oat)(i), 250.0f);
glVertex2f(-250.0f, (8oat)(i));
glVertex2f(250.0f, (8oat)(i));
}
glEnd();
}
//绘制一个点,这里用一个正方形表示一个点
void putpixel(GLsizei x, GLsizei y)
{
glRectf(10*x,10*y,10*x+10,10*y+10);
}
///////////////////////////////////////////////////////////////////
//DDA 画线算法 //
// //
// //
// //
///////////////////////////////////////////////////////////////////
void DDACreateLine(GLsizei x0, GLsizei y0, GLsizei x1, GLsizei y1, GLsizei num)
{
//设置颜色
glColor3f(1.0f,0.0f,0.0f);
//对画线动画进行控制
if(num == 1)
printf("DDA 画线算法:各点坐标");
else if(num==0)
return;
//画线算法的实现
GLsizei dx,dy,epsl,k;
GL8oat x,y,xIncre,yIncre;
dx = x1-x0;