多边形的扫描转换及区域填充讲稿.ppt
《多边形的扫描转换及区域填充讲稿.ppt》由会员分享,可在线阅读,更多相关《多边形的扫描转换及区域填充讲稿.ppt(62页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、多边形的扫描转换及区域填充多边形的扫描转换及区域填充第一页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-2 2内容内容n 基本概念基本概念n 扫描转换矩形扫描转换矩形n 扫描转换多边形扫描转换多边形n 区域填充区域填充n 光栅图形的反走样光栅图形的反走样第二页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-3 3基本概念基本概念n多边形有两种重要的表示方法n顶点表示 n用多边形的顶点序列来表示多边形。这种表示直观、几何意义强、占内存少,易于进行几何变换,但由于它没有明确指出哪些象素在多边形内,故不能直接用于面着色 n点阵
2、表示 n用位于多边形内的象素集合来刻画多边形。这种表示丢失了许多几何信息,但便于帧缓冲器表示图形,是面着色所需要的图形表示形式。第三页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-4 4基本概念基本概念n多边形的扫描转换n把多边形的顶点表示转换为点阵表示,也就是从多边形的给定边界出发,求出位于其内部的各个象素,并给帧缓冲器内的各个对应象素设置相应的灰度和颜色,通常称这种转换为多边形的扫描转换。n区域填充(演示)n是指先将在点阵表示的多边形区域内的一点(称为种子点)赋予指定的颜色和灰度,然后将这种颜色和灰度扩展到整个区域内的过程。第四页,讲稿共六十二页哦多边
3、形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-5 5扫描转换矩形扫描转换矩形n问题:n矩形是简单的多边形,那么为什么要单独处理矩形?n应用非常多,特别是窗口系统n比一般多边形可简化计算n共享边界如何处理?n左闭右开n下闭上开属于谁?第五页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-6 6扫描转换矩形扫描转换矩形n方法void FillRectangle(Rectangle*rect,int color)int x,y;for(y=rect-ymin;y ymax;y+)for(x=rect-xmin;x xmax;x+)PutPixel(
4、x,y,color);/*end of FillRectangle()*/第六页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-7 7扫描转换多边形扫描转换多边形n凸多边形n任意两顶点间的连线均在多边形内n凹多边形n任意两顶点间的连线有不在多边形内的部分 n含内环的多边形n多边形内再套有多边形,多边形内的多边形也叫内环,内环之间不能相交第七页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-8 8扫描转换多边形扫描转换多边形n几种方法n逐点判断算法n逐个判断绘图窗口内的像素,确定它们是否在多边形区域内部,从而求出位于多边形区
5、域内的像素的集合。n扫描线算法(要求重点掌握)n利用相邻像素之间的连贯性,避免逐点判断和反复求交运算。n边缘填充算法n利用求余运算,来达到填充的目的。第八页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-9 9逐点判断算法逐点判断算法void FillPolygonPbyP(Polygon*P,int polygonColor)int x,y;for(y=ymin;y=ymax;y+)for(x=xmin;x i结点的x值递增 x;n n/*polyfill*/第三十七页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-38
6、38多边形扫描线算法分析多边形扫描线算法分析100246810122468P3P2P1P4P5P6e3e4e2e1e5e6-2.5791.511013110291.575-2.573012345677ETymax x xe1e2e6e5e3e4第三十八页,讲稿共六十二页哦100246810122468P3P2P1P4P5P6e3e4e2e1e5e6-2.5791.511013110291.575-2.573012345677ETymax x xe1e2e6e5e3e4 (11.5,10)-(13,10)AET=空空y=1 AET=-2.573空1.575(7,1)-(7,1)y=2 AET=-
7、2.54.53空1.58.55(4.5,2)-(8.5,2)y=3 AET=029空1.5105(2,3)-(10,3)y=4 AET=029空1.511.55(2,4)-(11.5,4)y=5 AET=029空13(2,5)-(13,5)y=6 AET=029空01311(2,6)-(13,6)y=7 AET=029-2.579(2,7)-(7,7)1.5711空01311(7,7)-(13,7)y=8 AET=029-2.54.59(2,8)-(4.5,8)1.58.51101311(8.5,8)-(13,8)空y=9 AET=空y=10 AET=1.511.51101311空y=11 A
8、ET=空空11011101.511130(10,9)-(13,9)第三十九页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-4040扫描线算法与逐点判断法的比较扫描线算法与逐点判断法的比较n扫描线算法的数据结构和算法本身都比逐点判断法复杂得多。n扫描线算法利用边的连贯性以加速交点的计算,利用ET以排除盲目求交。n扫描线算法利用扫描线的连贯性以避免逐点判别,所以速度要比逐点判断算法快得多。第四十页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-4141区域填充区域填充 n区域n指已经表示成点阵形式的填充图形,它是相互连通的一
9、组像素的集合。n区域填充 n是对区域重新着色的过程。是指先将区域的一点(称为种子点)赋予指定的颜色,然后将该颜色扩展到整个区域的过程。区域填充算法要求区域是连通的。第四十一页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-4242区域填充区域填充n区域的表示形式n1.内点表示n枚举出给定区域内所有像素n内部的所有像素着同一个颜色n边界像素着与内部像素不同的颜色n2.边界表示n枚举出给定区域所有边界上像素n边界上的所有像素着同一颜色n内部像素着与边界像素不同的颜色区域的内点表示和边界表示区域的内点表示和边界表示第四十二页,讲稿共六十二页哦多边形的扫描转换及区域
10、填充多边形的扫描转换及区域填充第五章第五章-4343区域填充区域填充n区域填充要求区域是连通的n区域的连通形式n4连通n8连通第四十三页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-4444区域填充区域填充n4连通与8连通区域的区别n连通性:4连通可看作8连通区域,但对边界有要求n对边界的要求第四十四页,讲稿共六十二页哦多边形的扫描转换及区域填充多边形的扫描转换及区域填充第五章第五章-4545种子填充算法种子填充算法-内点表示区域内点表示区域n设G为一内点表示的区域,(x,y)为区域内一点,old_color为G的原色。现取(x,y)为种子点对区域G进行填
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 多边形 扫描 转换 区域 填充 讲稿
限制150内