预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共39页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第二章图形算法基础DDA画线算法用上式可求出图2-1中直线PsPe上红色的各点,但显示时用像素(图中的黑点)表示,用舍入的方法找到靠近红点的像素。舍入就是我们常用的四舍五入,在程序中实现四舍五入的方法是将值加0.5然后取整。也可以使用直线的斜截式方程:y=mx+b来求出y值。但是使用这种方法的效率比较低。设有一直线,其两端点为P(xs,ys)、P(xe,ye)令:⊿x=xe-xs,⊿y=ye-ysBresenham画线算法是一种精确而有效的光栅线段生成算法,它可用于圆和其他曲线显示的整数增量运算算法原理中点画线法基本原理思考题:画圆弧算法一、一般方法:1.直角坐标法:设圆心为坐标原点,半径为r,则该圆的直角坐标方程为x2+y2=r2沿X轴从-r到r的单位步长计算的y值来得到圆周上生一点的位置,即中点画线法:Pk(xk,yk)Pu(xk+1,yk)Bresenham生成圆弧算法R1。我们讨论的生成圆的算法是1/8圆的。试说明怎样才能绘出整个圆。2。如果圆心不在原点,试说明生成圆的算法。3。完成中点画圆法和Bresenham画圆法的递推公式。椭圆的画法考虑到椭圆的对称性,只要绘制1/4椭圆的中点就可绘出整个椭圆。算法原理P(-x,-y)在图示的部分Ⅰ的AC椭圆弧段,法矢量的x向分量小于y向分量,斜率k处处满足|k|<1,|△x|>|△y|,所以x方向为主位移方向;在C点,法矢量的x向分量等于y向分量,斜率k满足k=-1,|△x|=|△y|;在部分Ⅱ的CB椭圆弧段,法矢量x向分量大于y向分量,斜率k处处满足|k|>1,|△y|>|△x|,所以y方向为主位移方向。椭圆的中点Bresenham算法的原理:在部分Ⅰ:每次在主位移x方向上走一步,y方向上退不退步取决于中点偏差判别式的值;在部分Ⅱ:每次在主位移方向y上退一步,x方向上走不走步取决于中点偏差判别式的值。构造上半部分Ⅰ中点偏差判别式x上半部分Ⅰ的递推公式(3-18)2.中点偏差判别式d1的初值上半部分椭圆的起点为A(0,b),因此,第一个中点是(1,b-0.5),对应的d1的初值为:构造Ⅱ中点偏差判别式当d2<0时,中点M在椭圆内,下一像素点应点亮Pr,即x方向上走一步;当d2>0时,中点M在椭圆外,下一像素点应点亮Pl,即x方向上不走步;当d2=0时,中点M在椭圆上,Pl、Pr和椭圆的距离相等,点亮Pl或Pr均可,约定取Pl,如图3-15所示。下半部分Ⅱ的递推公式⑴当d2<0时,下一步的中点坐标为:M(xi+1.5,yi-2)。所以下一步中点偏差判别式为:y向分量为:P(xi,yi)直线距离加权反走样技术走样基本原理实现方法