裁剪算法反走样方法

裁剪算法反走样方法

ID:5530282

大小:378.00 KB

页数:71页

时间:2017-12-17

裁剪算法反走样方法_第1页
裁剪算法反走样方法_第2页
裁剪算法反走样方法_第3页
裁剪算法反走样方法_第4页
裁剪算法反走样方法_第5页
资源描述:

《裁剪算法反走样方法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、裁剪算法反走样方法第六章裁剪湖南省科技大学计算机科学与工程学院计算机图形学二维裁剪直线段裁剪直接求交算法Cohen-Sutherland算法中点分割算法参数化裁剪算法Liang-Barskey算法多边形裁剪Sutlerland_Hodgman算法Weiler-Athenton算法湖南省科技大学计算机科学与工程学院计算机图形学裁剪裁剪:确定图形中哪些部分落在显示区之内,哪些落在显示区之外,以便只显示落在显示区内的那部分图形。这个选择过程称为裁剪。图形裁剪算法,直接影响图形系统的效率。湖南省科技大学计算机科学与工程学院计算机图形学点的裁剪图形裁剪中最基本的问题。假设窗

2、口的左下角坐标为(xL,yB),右上角坐标为(xR,yT),对于给定点P(x,y),则P点在窗口内的条件是要满足下列不等式:xL<=x<=xR并且yB<=y<=yT否则,P点就在窗口外。问题:对于任何多边形窗口,如何判别?(xL,yB)(xR,yT)湖南省科技大学计算机科学与工程学院计算机图形学直线段裁剪直线段裁剪算法是复杂图形裁剪的基础。复杂的曲线可以通过折线段来近似,从而裁剪问题也可以化为直线段的裁剪问题。直接求交算法Cohen-Sutherland算法中点算法梁友栋-barskey算法参数化裁剪算法湖南省科技大学计算机科学与工程学院计算机图形学直线段裁剪裁剪

3、线段与窗口的关系:(1)线段完全可见;(2)显然不可见;(3)其它提高裁剪效率:快速判断情形(1)(2),对于情形(3),设法减少求交次数和每次求交时所需的计算量。湖南省科技大学计算机科学与工程学院计算机图形学直接求交算法直线与窗口边都写成参数形式,求参数值。湖南省科技大学计算机科学与工程学院计算机图形学Cohen-Sutherland裁剪基本思想:对于每条线段P1P2分为三种情况处理:(1)若P1P2完全在窗口内,则显示该线段P1P2。(2)若P1P2明显在窗口外,则丢弃该线段。(3)若线段不满足(1)或(2)的条件,则在交点处把线段分为两段。其中一段完全在窗口

4、外,可弃之。然后对另一段重复上述处理。为快速判断,采用如下编码方法:湖南省科技大学计算机科学与工程学院计算机图形学实现方法:将窗口边线两边沿长,得到九个区域,每一个区域都用一个四位二进制数标识,直线的端点都按其所处区域赋予相应的区域码,用来标识出端点相对于裁剪矩形边界的位置。100100010101100000000100101000100110ABCDCohen-Sutherland裁剪湖南省科技大学计算机科学与工程学院计算机图形学Cohen-Sutherland算法将区域码的各位从右到左编号,则坐标区 域与各位的关系为:上下右左XXXX任何位赋值为1,代表端点

5、落在相应的位置上,否则该位为0。若端点在剪取矩形内,区域码为0000。如果端点落在矩形的左下角,则区域码为0101。湖南省科技大学计算机科学与工程学院计算机图形学Cohen-Sutherland算法一旦给定所有的线段端点的区域码,就可以快速判断哪条直线完全在剪取窗口内,哪条直线完全在窗口外。所以得到一个规律:湖南省科技大学计算机科学与工程学院计算机图形学Cohen-Sutherland裁剪若P1P2完全在窗口内code1=0,且code2=0,则“取”若P1P2明显在窗口外code1&code2≠0,则“弃”在交点处把线段分为两段。其中一段完全在窗口外,可弃之。然

6、后对另一段重复上述处理。编码线段裁剪湖南省科技大学计算机科学与工程学院计算机图形学Cohen-Sutherland裁剪如何判定应该与窗口的哪条边求交呢?编码中对应位为1的边。计算线段P1(x1,y1)P2(x2,y2)与窗口边界的交点if(LEFT&code!=0){x=XL;y=y1+(y2-y1)*(XL-x1)/(x2-x1);}elseif(RIGHT&code!=0){x=XR;y=y1+(y2-y1)*(XR-x1)/(x2-x1);}elseif(BOTTOM&code!=0){y=YB;x=x1+(x2-x1)*(YB-y1)/(y2-y1);}e

7、lseif(TOP&code!=0){y=YT;x=x1+(x2-x1)*(YT-y1)/(y2-y1);}具体算法见p201湖南省科技大学计算机科学与工程学院计算机图形学Cohen-Sutherland直线裁剪算法小结本算法的优点在于简单,易于实现。他可以简单的描述为将直线在窗口左边的部分删去,按左,右,下,上的顺序依次进行,处理之后,剩余部分就是可见的了。在这个算法中求交点是很重要的,他决定了算法的速度。另外,本算法对于其他形状的窗口未必同样有效。特点:用编码方法可快速判断线段的完全可见和显然不可见。湖南省科技大学计算机科学与工程学院计算机图形学中点分割裁剪算

8、法基本思想

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

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

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