Bresenham算法画直线

时间:2012-04-15 17:00:47
【文件属性】:

文件名称:Bresenham算法画直线

文件大小:1.86MB

文件格式:RAR

更新时间:2012-04-15 17:00:47

Bresenham算法 直线生成

Bresenham直线生成算法 直线Bresenham算法思想:   在另一个方向(即直线变化较小的方向)坐标的0.5处,引出“象素分界线”栅条。按直线从起点到终点的顺序,当变化较大方向的坐标每次步进一个单位时,另一个方向依误差ei(数学点pi与最近的象素分界线的偏离值)的符号决定是否步进,当ei≥0时步进一个单位,否则不步进。为了避免实数运算,而且ei两边同乘大于0的某个数又不影响符号的判别,从而可以将误差ei变形成为整型数d。 直线Bresenham算法步骤:   当直线满足条件:0≤m≤1,且x1<x2时,Bresenham算法步骤如下:   1、从主调函数得到参数:x1、y1、x2、y2、color;   2、计算:dx=x2-x1;dy=y2-y1;   3、计算初始误差:d=2•dy-dx;   4、令初始象素坐标为:x=x1;y=y1;   5、重复以下步骤,直到x>x2 为止:     5.1、用规定颜色在(x,y)处画象素点;     5.2、若d≥0,则 y=y+1;d=d-2•dx;     5.3、x=x+1;d=d+2dy。


网友评论