1.实验目的:
理解基本图形元素光栅化的基本原理,掌握一种基本图形元素光栅化算法,利用GDI实现直线光栅化的DDA算法。
2.实验内容:
(1) 根据所给的直线光栅化的示范源程序,在计算机上编译运行,输出正确结果;
(2) 指出示范程序采用的算法,以此为基础将其改造为中点线算法,写入实验报告;
(3)了解和使用GDI的生成直线的命令,来验证程序运行结果。
3.实验原理:
示范代码原理参见教材直线光栅化一节中的DDA算法。
4.实验代码:
void LineDDA()//
{
CClientDC dc(this);
COLORREF rgb=#0000ff;//蓝色
int x, dy, dx, y;
float m;
dx=x1-x0;
dy=y1-y0;
m=dy/dx;
y=y0;
for(x=x0;x<=x1; x++)
{
dc.SetPixel(x,(int)(y+0.5),rgb);
y+=m;
}
}
5.思考题
示范代码有个小错误,能否指出并改正?请将结果写入实验报告。