|
設(shè)定兩個(gè)坐標(biāo)點(diǎn)(X0,Y0),(X1,Y1),畫一條斜線。
斜線方程為Y=aX+b,根據(jù)兩個(gè)坐標(biāo)點(diǎn)求出a,b
用for,從X0到X1循環(huán),根據(jù)方程計(jì)算Y0到Y(jié)1,得出若干個(gè)點(diǎn)的坐標(biāo),然后通過(guò)坐標(biāo)描點(diǎn),怎么畫出來(lái)是一條直線呢?
部分代碼如下:
void Drawline(uchar X0, uchar Y0, uchar X1 ,uchar Y1, uchar Color)//畫斜線
{
int a, b ;
uchar incx, incy ;
////////////////////////
if(X0>X1)
{
incx=X0;
X0=X1;
X1=incx;
incy=Y0;
Y0=Y1;
Y1=incy;
}
a=(Y0-Y1)/(X0-X1);
b=Y0-a*X0;
for(;X0<X1+1;X0++)
{
Y0=a*X0+b;
Draw_dots( X0, Y0, Color ) ;
}
}
|
|