用DDA画线算法编写一个画一条一个象素宽的直线,一个像素是什么意思,要是画三个像素怎么改程序

dda_line(x1,y1,x2,y2,c)intx1,y1,x2,y2,c;{floatdelta_x,delta_y,x,y;intdx,dy,steps,k;dx... dda_line (x1, y1, x2, y2, c)

int x1, y1, x2, y2, c;

{

float delta_x, delta_y, x, y;

int dx, dy, steps, k;

dx=x2-x1;

dy=y2-y1;

if (abs(dx)>abs(dy)) steps=abs(dx);

else steps=abs (dy);

delta_x=(float)dx / (float)steps;

delta_y=(float)dy / (float)steps;

x=x1;

y=y1;

for (k=1; k<=steps; k++)

{

putpixel((int)(x+0.5), (int)(y+0.5), c);

x+=delta_x;

y+=delta_y;

}

}
展开
 我来答
binang58
2011-12-16 · 贡献了超过124个回答
知道答主
回答量:124
采纳率:0%
帮助的人:58.3万
展开全部
可以画线 g.drawline(x1,y1,x1,y1); 也就是画一个象素的线至于你说的算法我就不知道了 DDA用来画线而不是一个像素点。当然因为其算法肯定要
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式