当前位置:首页 > cad-4-第三,四章裁减消隐(68) - 图文
多边形裁剪
开窗—把一幅成整的图分成几个部分来显示,要求显示图中一给定矩形区域中的部分,放大、平移等,这个矩形称为“窗口”。选取的“窗口”叫“开窗”。
裁剪—把处于窗口内外的部分分割开来,将窗口内的部分显示,把窗口外的部分去掉,不显示。
裁剪计算判断的依据是一对简单的不等式,通过它们可以测定(x,y)是否落在窗口边框之内而成为可见:
xc?x?xryb?y?yty
x
xi, yi)是否同时满足不等式,
只有当点的两个坐标xi, yi同时满足该不等式,才能确定该点落在窗口以内,是可见的,否则,必处于窗口外,是不可见的。把图形的所有元素转换成点元素,再判断,花时太长,不适用,直线段是组成一切其他图形的基础(曲线、字符、多边形、曲面等),故直线段的裁剪算法显然十分重要。
3-1线段裁剪
直接与窗口相对位置的关系:四种1.直线在窗口边框之外。a2.直线在窗口边框之内。b
3.直线在窗口的一条边框相关,使得该直线被相关交点分成两(段)截,一截在窗内,一截在外。c
4.直线贯穿整个窗口,直线与窗口两条边框相交,使原直线被分成三截,一个在窗内,另两段在窗外。d,edcabe、Cohen-Sutherland编码算法
首先把窗口的四条边框线延长,并将平面分成九个区域,每个区域有一个四位二进制代码表示。该算法包括两个部分:
1.判断该直线段是否完全位于窗口以内。是,输出,过程结束。如不是,判断直线是否完全位于窗口之外。是,完全排除,无输出,过程结束。不能满足上述两种,进入第二部分:
2.首先把原直线分割成两段,然后对每一段再进行上述第一部分的两个测试。
算法依据:每条线段要么全落在窗口之外;要么被分成两段,使得其中有一段因完全处于窗外,而可被简单排除掉,这样不断地排除掉完全位于窗外的段,最后保留的,一定是完全位于窗口内。
共分享92篇相关文档