话不多说,直接上代码
BresenhamLine.m
function BresenhamLine(x0,y0,x1,y1)
dx=x1-x0;
dy=x1-x0;
len=max(abs(x1-x0),abs(y1-y0));
d(1)=dx-2*dy;
up=2*dx-2*dy;
down=-2*dy;
x(1)=x0;
y(1)=y0;
for n=1:len
x(n+1)=x(n)+1;
if d(n) < 0
y(n+1)=y(n)+1;
d(n+1)=d(n)+up;
else
y(n+1)=y(n);
d(n+1)=d(n)+down;
end
end
for n=1:len
plot(x,y);
end
function BresenhamLine(