Bresenham算法画线
考虑d2与d1的关系:
(1)如果d2>=d1,则直线更接近下方点
(2)如果d2<d1,则直线更接近上方点
完整算法:
void Bresenhamline (int x0,int y0,int x1, int y1,int color)
{
int x, y, dx, dy;
float k, e;
dx = x1-x0, dy = y1- y0, k=dy/dx;
e=-0.5, x=x0, y=y0;
for (i=0; idx; i++)
{
drawpixel (x, y, color);
x=x+1,e=e+k;
if (e0)
{
y++, e=e-1;}
}
}
完整代码:
</