画线算法
- DDA(数值微分法)
void DDALine(int x0,int y0,int x1,int y1){
float delta,x,y,dx,dy;
dx = x1-x0;
dy = y1-y0;
delta = dy/dx;
y = y0;
x = x0;
if(delta>=1){ //斜率大于等于1
for(y=y0;y<=y1;y++){
DrawPixel(int(x+0.5),y);
x+=1./delta;
}
}
else for(x=x0;x<=x1;x++){ //斜率小于1
DrawPixel(x,int(y+0.5));
y+=delta;
}
}
- 中点画线法
void MidPointLine(int