中点画线法 若d0->M在直线上方->取P 此时再下一个象素的判别式为 d =F(X,+ 2,yn+0.5 =a(×+2)+b(+05)+c =a(X+1)+b(y+0.5)+c+a=d+a p 增量为a P2 2021/1/21 P=(x或yp)|P1
2021/1/21 浙江大学计算机图形学 16 中点画线法 若d0 ->M在直线上方->取P1; 此时再下一个象素的判别式为 d1=F(xp+2, yp+0.5) =a(xp+2)+b(yp+0.5)+c = a(xp +1)+b(yp +0.5)+c +a =d+a; 增量为a P=(xp,yp) Q P2 P1
中点画线法 若d<0>M在直线下方→>取P2; 此时再下一个象素的判别式为 d2=F(x+2y+15) =a(×+2)+by+15)+c a(x2+1)+b(y+0.5)+c+a+b =d+a+b;增量为a+h P2 2021/1/21 浙江大学计算机图yp)1P1
2021/1/21 浙江大学计算机图形学 17 中点画线法 ◼ 若d<0->M在直线下方->取P2; ◼ 此时再下一个象素的判别式为 d2= F(xp+2, yp+1.5) =a(xp+2)+b(yp+1.5)+c = a(xp +1)+b(yp +0.5)+c +a +b =d+a+b ; 增量为a+b P=(xp,yp) Q P2 P1
中点画线法 画线从(Xoy)开始,d的初值 d=F(X+1,y0+0.5)=a(X+1)+b(y+0.5)+C (Xoy0)+a+0.5b=a+0.5b 由于只用d的符号作判断,为了只包含整数运算, 可以用2d代替d来摆脱小数,提高效率 2021/1/21 浙江大学计算机图形学 18
2021/1/21 浙江大学计算机图形学 18 中点画线法 ◼ 画线从(x0 , y0 )开始,d的初值 d0=F(x0+1, y0+0.5)= a(x0 +1)+b(y0 +0.5)+c = F(x0 , y0 )+a+0.5b = a+0.5b 由于只用d 的符号作判断,为了只包含整数运算, 可以用2d代替d来摆脱小数,提高效率