计算机图形学3基本图形的扫描转换模板.ppt

计算机图形学3基本图形的扫描转换模板.ppt

ID:61835621

大小:2.50 MB

页数:70页

时间:2021-03-23

计算机图形学3基本图形的扫描转换模板.ppt_第1页
计算机图形学3基本图形的扫描转换模板.ppt_第2页
计算机图形学3基本图形的扫描转换模板.ppt_第3页
计算机图形学3基本图形的扫描转换模板.ppt_第4页
计算机图形学3基本图形的扫描转换模板.ppt_第5页
资源描述:

《计算机图形学3基本图形的扫描转换模板.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、基本图形(直线、圆、椭圆)的扫描转换◆扫描转换的基本概念◆绘制像素点函数SetPixel的用法◆直线圆和椭圆的中点Bresenham原理◆直线反走样原理本章学习目标2本章内容3.1直线的扫描转换3.2圆的扫描转换3.3椭圆的扫描转换3.4反走样算法3.6本章小结3.7习题3什么是扫描转换?直线、圆、椭圆是图形设计的最基本的图形(图元)。图形的扫描转换(光栅化):在像素点阵中确定最佳逼近于理想图形的像素占集的过程。4步骤如下:1、确定有关像素2、用图形的颜色或其它属性,对像素进行写操作。对一维图形,不考虑线宽,则用一个像素宽的直线来显示图形。二维图形的光栅化,即区域的填充:确定像素集,填色

2、或图案。任何图形的光栅化,必须显示在一个窗口内,否则不予显示。即确定一个图形的哪些部分在窗口内,哪些在窗口外,即裁剪。5图形显示前需要:扫描转换+裁剪●裁剪---〉扫描转换:最常用,节约计算时间。●扫描转换---〉裁剪:算法简单;63.1直线的扫描转换直线的扫描转换:确定最佳逼近于该直线的一组象素,并且按扫描线顺序,对这些象素进行写操作。三个常用算法:数值微分法(DDA)中点画线法Bresenham算法。7数值微分法(DDA)假定直线的起点、终点分别为:(x0,y0),(x1,y1),且都为整数。(Xi+1,Yi+k)(Xi,Int(Yi+0.5))(Xi,Yi)栅格交点表示象素点位置。

3、。。。8基本思想已知过端点P0(x0,y0),P1(x1,y1)的直线段Ly=kx+b直线斜率为设x=x1-x0,y=y1-y0设x>y>0,让x从起点到终点变化,每步递增1个像素,计算对应的y坐标。9计算yi+1=kxi+1+b=k(xi+1)+b=kxi+b+k=yi+k即:当x每递增1个像素,y递增k(即直线斜率);注意上述分析的算法仅适用于k≤1的情形。在这种情况下,x每增加1,y最多增加1。当k1时,必须把x,y地位互换,怎么实现?10增量算法:在一个迭代算法中,如果每一步的x、y值是用前一步的值加上一个增量来获得,则称为增量算法。DDA算法就是一个增量算法。

4、这种方法直观,但效率太低,因为每一步需要一次浮点乘法和一次舍入运算。11voidDDALine(intx0,inty0,intx1,inty1,intcolor)intx;floatdx,dy,y,k;dx,=x1-x0,dy=y1-y0;k=dy/dx,y=y0;for(x=x0;xx1,x++)drawpixel(x,int(y+0.5),color);y=y+k;12例:画直线段P0(0,0)--P1(5,2)xint(y+0.5)y+0.5000+0.5100.4+0.5210.8+0.5311.2+0.5421.6+0.5522.0+0.5012345321Line:

5、P0(0,0)--P1(5,2)缺点:在此算法中,y、k必须是float,且每一步都必须对y进行舍入取整,不利于硬件实现。13一、原理:每次在主位移方向上走一步,另一个方向上走不走步取决于中点偏差判别式的值。给定理想直线的起点坐标为P0(x0,y0),终点坐标为P1(x1,y1),则直线的隐函数方程为:中点画线法其中,直线的斜率:直线水平方向位移:直线垂直方向位移:(3-1)1415理想直线将平面划分成三个区域:对于直线上的点,F(x,y)=0;对于直线上方的点,F(x,y)>0;对于直线下方的点,F(x,y)<0。假设直线的斜率为0≤k≤1,则,所以确定x方向为主位移方向。按照Bres

6、enham原理,x方向上每次加1,y方向上加不加1取决于中点偏差判别式的值。16假定直线的当前点是,沿主位移x方向走一步,下一点只能在和两点中选取。和的中点为,如图3-2所示。显然,若中点M在理想直线的下方,则点距离直线近,点亮;否则点亮。17F(x,y)>0F(x,y)=0F(x,y)<0直线中点Bresenham算法原理18二、构造中点偏差判别式从P(xi,yi)点走第一步后,为了进行下一像素点的选取,需将Pu和Pd的中点M(xi+1,yi+0.5)代入隐函数方程,构造中点偏差判别式d。(3-2)19当d<0时,中点M在直线的下方,Pu点离直线距离近,下一像素点应点亮Pu,即y方向上

7、走一步;当d>0时,中点M在直线的上方,Pd点离直线距离近,下一像素点应点亮Pd,即y方向上不走步;当d=0时,中点M在直线上,Pu、Pd与直线的距离相等,点亮Pu或Pd均可,约定取Pd。(3-3)20三、递推公式M(xi+2,yi+1.5)M(xi+1,yi+0.5)P(xi,yi)M(xi+1,yi+0.5)M(xi+2,yi+0.5)P(xi,yi)中点偏差判别式的递推d<0d≥01.中点偏差判别式的递推公式在主位移x方向上已

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。