Thuật toán Bresenham vẽ đoạn thẳng trường cho trường hợp hệ số góc 0<m<1 có thể mô tả tóm tắt như sau:
Ngược lại: p = p + 2( Dy - Dx) và y = y+1.
Sau đây là hàm cài đặt thuật toán:
void Line(int x1,int y1,int x2,int y2)
// 0<m<1
{
int x_max,x,y;
int dx=abs(x1-x2);
int dy=abs(y1-y2);
int c1=2*dy;
int c2=2*(dy-dx);
int p=2*dy-dx;
if (x1>x2)
{
x=x2; y=y2; x_max=x1;
}
else
{
x=x1; y=y1; x_max=x2;
}
putpixel(x,y,color);
while (x < x_max)
{
x=x+1;
if (p<0) p=p+c1;
else
{
y=y+1;
p=p+c2;
}
putpixel(x,y,5);
}
}
» Tin mới nhất:
» Các tin khác: