欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载
     

    计算机图形学电子教案(精品) .ppt

    • 资源ID:2227592       资源大小:2.93MB        全文页数:110页
    • 资源格式: PPT        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    计算机图形学电子教案(精品) .ppt

    2023/2/3,河北农业大学 张玉新,1,第6章 二维图形变换与输出,提出问题,变换的数学基础如何对二维图形进行方向、尺寸和形状方面的变换如何方便地在显示设备上输出二维图形(二维观察)裁剪,2023/2/3,河北农业大学 张玉新,2,6.1变换的数学基础,向量向量和,2023/2/3,河北农业大学 张玉新,3,向量的数乘 向量的点积性质,2023/2/3,河北农业大学 张玉新,4,向量的长度 单位向量 向量的夹角向量的叉积,2023/2/3,河北农业大学 张玉新,5,矩阵的含义矩阵:由mn个数按一定位置排列的一个 整体,简称mn矩阵。,A=,其中,aij称为矩阵A的第i行第j列元素,2023/2/3,河北农业大学 张玉新,6,矩阵运算加法设A,B为两个具有相同行和列元素的矩阵A+B=数乘kA=k*aij|i=1.m,j=1,.n,2023/2/3,河北农业大学 张玉新,7,乘法设A为32矩阵,B为23矩阵 C=A B=C=Cmp=Am n Bnp cij=aik*bkj单位矩阵 在一矩阵中,其主对角线各元素aii=1,其余皆为0的矩阵称为单位矩阵。n阶单位矩阵通常记作In。Am n=Am n In,k=1,n,2023/2/3,河北农业大学 张玉新,8,逆矩阵若矩阵A存在AA-1=A-1A=I,则称A-1为A的逆矩阵矩阵的转置 把矩阵A=(aij)mn的行和列互换而得到的nm矩阵称为A的转置矩阵,记作AT。(AT)T=A(A+B)T=AT+BT(aA)T=aAT(AB)T=BT AT 当A为n阶矩阵,且A=AT,则A是对称矩阵。,2023/2/3,河北农业大学 张玉新,9,矩阵运算的基本性质交换律与结合律师 A+B=B+A;A+(B+C)=(A+B)+C数乘的分配律及结合律 a(A+B)=aA+aB;a(A B)=(aA)B=A(aB)(a+b)A=aA+bA a(bA)=(ab)A,2023/2/3,河北农业大学 张玉新,10,矩阵乘法的结合律及分配律 A(B C)=(A B)C(A+B)C=A C+B C C(A+B)=C A+C B矩阵的乘法不适合交换律,2023/2/3,河北农业大学 张玉新,11,所谓齐次坐标表示法就是由n+1维向量表示一个n维向量。如n维向量(P1,P2,Pn)表示为(hP1,hP2,hPn,h),其中h称为哑坐标。1、h可以取不同的值,所以同一点的齐次坐标不是唯一的。如普通坐标系下的点(2,3)变换为齐次坐标可以是(1,1.5,0.5)(4,6,2)(6,9,3)等等。2、普通坐标与齐次坐标的关系为“一对多”由普通坐标h齐次坐标由齐次坐标h普通坐标 3、当h=1时产生的齐次坐标称为“规格化坐标”,因为前n个坐标就是普通坐标系下的n维坐标。,6.1.2齐次坐标,2023/2/3,河北农业大学 张玉新,12,齐次坐标,(x,y)点对应的齐次坐标为(x,y)点对应的齐次坐标为三维空间的一条直线,2023/2/3,河北农业大学 张玉新,13,图形变换是计算机图形学中的一个重要内容。通过对简单图形进行多种变换和组合,可以形成一个复杂图形。,6.1.3、图形变换的基本原理,2023/2/3,河北农业大学 张玉新,14,下面这张示意图,举例说明了图形的几种常见变化。,几种常见的几何变换:缩放、压缩、旋转、错切。,2023/2/3,河北农业大学 张玉新,15,由于图形的几何变换仅和点的位置变化有关,所以我们首先要讨论一个点在空间的位置及其变化。点的位置可以用一个向量来表示:如二维的点:xy三维的点:xyz那么要改变一个点的位置,就意味着要改变这个向量(大小及方向)。,2023/2/3,河北农业大学 张玉新,16,对向量的运算要用矩阵运算来实现。假如原顶点坐标为(x,y),经变换后的坐标为(x*,y*)。那么用矩阵表示的变换过程为:x*y*x y 其中的为变换矩阵。,2023/2/3,河北农业大学 张玉新,17,同时,一个二维线性变换的一般形式也可以写成如下的代数式:x*=a1x+b1y+c1y*=a2x+b2y+c2转换为矩阵形式:,2023/2/3,河北农业大学 张玉新,18,所以说,图形变换的矩阵形式和代数 形式是完全可以统一的,只是原来用 二维向量x y表示的点变成了用 三维向量x y 1来表示。但其 第三维是常数。其几何意义为:x y:Z=0平面上的点。x y 1:Z=1平面上的点。,2023/2/3,河北农业大学 张玉新,19,两种表示方法,仅从图形上来看是没有实质性差别的。我们可以看下面的图例:,在不同高度水平面上绘的图,2023/2/3,河北农业大学 张玉新,20,这种用三维的形式来表示一个二维向量,进一步推广来说,用一个 n+1维的形式来表示 n 维向量的方法,叫做齐次坐标表示法。(注意,增加的一维是常数)这一小小的改变,给图形变换的矩阵实现创造了条件。,2023/2/3,河北农业大学 张玉新,21,2023/2/3,河北农业大学 张玉新,22,于是,对于任何二维图形的顶点进行几何变换,均可以写成如下形式:p*=p 其中:p*为变换后的新顶点表。p为变换前的顶点表。矩阵中元素的取值不同,可以形成对顶点的不同变换。连接新的顶点,从而构成新的图形(几何变换过程)。,2023/2/3,河北农业大学 张玉新,23,6.2 基本几何变换,基本几何变换都是相对于坐标原点和坐标轴进行的几何变换。6.2.1 平移变换平移是指将p点沿直线路径从一个坐标位置移到另一个坐标位置的重定位过程。,2023/2/3,河北农业大学 张玉新,24,平移是一种不产生变形而移动物体的刚体变换(rigid-body transformation),2023/2/3,河北农业大学 张玉新,25,2023/2/3,河北农业大学 张玉新,26,6.2.2 比例变换,比例变换是指对p点相对于坐标原点沿x方向放缩Sx倍,沿y方向放缩Sy倍。其中Sx和Sy称为比例系数。,2023/2/3,河北农业大学 张玉新,27,推导:矩阵:,2023/2/3,河北农业大学 张玉新,28,2023/2/3,河北农业大学 张玉新,29,6.2.3 旋转变换,二维旋转是指将p点绕坐标原点转动某个角度(逆时针为正,顺时针为负)得到新的点p的重定位过程。,2023/2/3,河北农业大学 张玉新,30,推导:矩阵:逆时针旋转角,顺时针旋转角?,2023/2/3,河北农业大学 张玉新,31,简化计算(为了旋转的连续、逼真,当很小时),2023/2/3,河北农业大学 张玉新,32,6.2.4 对称变换,对称变换后的图形是原图形关于某一轴线或原点的镜像。,2023/2/3,河北农业大学 张玉新,33,2023/2/3,河北农业大学 张玉新,34,(1)关于x轴对称,2023/2/3,河北农业大学 张玉新,35,(2)关于y轴对称,2023/2/3,河北农业大学 张玉新,36,(3)关于原点对称,2023/2/3,河北农业大学 张玉新,37,(4)关于y=x轴对称,2023/2/3,河北农业大学 张玉新,38,(5)关于y=-x轴对称,2023/2/3,河北农业大学 张玉新,39,6.2.5 错切变换,错切变换,也称为剪切、错位变换,用于产生弹性物体的变形处理。,2023/2/3,河北农业大学 张玉新,40,其变换矩阵为:,(1)沿x方向错切:b=0而c0(2)沿y方向错切:b0而c=0(3)两个方向错切:b 0且c 0,2023/2/3,河北农业大学 张玉新,41,6.2.6 二维图形几何变换的计算,几何变换均可表示成P=P*T的形式1.点的变换2.直线的变换 3.多边形的变换 4.曲线的变换,2023/2/3,河北农业大学 张玉新,42,6.3 复合变换,复合变换是指:图形作一次以上的几何变换,变换结果是每次的变换矩阵相乘。任何一复杂的几何变换都可以看作基本几何变换的组合形式。复合变换具有形式:,2023/2/3,河北农业大学 张玉新,43,6.3.1 二维复合平移两个连续平移是加性的。6.3.2 二维复合比例连续比例变换是相乘的。6.3.3 二维复合旋转两个连续旋转是相加的。可写为:,2023/2/3,河北农业大学 张玉新,44,6.3.4 其它二维复合变换,2023/2/3,河北农业大学 张玉新,45,6.3.5 相对任一参考点的二维几何变换,相对某个参考点(xF,yF)作二维几何变换,其变换过程为:(1)平移:目的先把参考点移至坐标原点。(2)针对原点进行二维几何变换。(3)反平移。例1.相对点(xF,yF)的旋转变换例2.相对点(xF,yF)的比例变换 对任意直线的对称变换?,2023/2/3,河北农业大学 张玉新,46,对任意直线的对称变换前面介绍过五种对称变换,但对称轴都是特殊位置直线。对于对称轴是任意位置直线的对称变换,以上的对称变换矩阵都不能直接应用。见例图:设任意直线的方程为:ax+by+c=0该直线在、两轴上的截距分别为-c/a和-c/b;直线的斜率为tg=-a/b。,2023/2/3,河北农业大学 张玉新,47,为了使这个变换能够实现,首先想到的是:最好能把任意位置直线变成能应用基本变换的特殊位置直线。所以整个变换的实现过程为:先把任意位置直线变为(应用基本变换)特殊位置直线;应用基本的对称变换矩阵进行变换;最后恢复原状。,2023/2/3,河北农业大学 张玉新,48,(1)让直线沿轴方向平移c/a,使其通过坐标系原点。变换矩阵为:1 0 0 T1=0 1 0 c/a 0 1(见例图),2023/2/3,河北农业大学 张玉新,49,(2)让直线绕坐标系原点旋转-角,使与轴重合。变换矩阵为:cos-sin 0 T2=sin cos 0 0 0 1(见例图),2023/2/3,河北农业大学 张玉新,50,(3)由于原直线已与轴重合,于是对于直线的对称变换即为对于轴的对称变换。变换矩阵为:1 0 0 T3=0-1 0 0 0 1(见例图),2023/2/3,河北农业大学 张玉新,51,(4)绕原点旋转角,使直线恢复到原倾斜位置。变换矩阵为:cos sin 0 T4=-sin cos 0 0 0 1(见例图),2023/2/3,河北农业大学 张玉新,52,(5)让直线沿轴方向平移-c/a,使其回到原来位置。变换矩阵为:1 0 0 T5=0 1 0-c/a 0 1(见例图),2023/2/3,河北农业大学 张玉新,53,综合以上的五步,对任意直线的对称变换过程为:x*y*1=x y 1T1T2T3T4T5=x y 1T组合变换矩阵为:cos2 sin2 0T=sin2-cos2 0(c/a)(cos2-1)(c/a)sin2 1,2023/2/3,河北农业大学 张玉新,54,6.3.6 相对任意方向的二维几何变换,相对任意方向作二维几何变换,其变换的过程是:(1)旋转变换(2)针对坐标轴进行二维几何变换;(3)反向旋转例3.相对直线y=x的反射变换,2023/2/3,河北农业大学 张玉新,55,例4.将正方形ABCO各点沿图6-8所示的(0,0)(1,1)方向进行拉伸,结果为如图所示的,写出其变换矩阵和变换过程。,2023/2/3,河北农业大学 张玉新,56,6.3.7 坐标系之间的变换,问题:,2023/2/3,河北农业大学 张玉新,57,分析:,2023/2/3,河北农业大学 张玉新,58,可以分两步进行:,2023/2/3,河北农业大学 张玉新,59,于是:,2023/2/3,河北农业大学 张玉新,60,6.3.8 光栅变换,直接对帧缓存中象素点进行操作的变换称为光栅变换。光栅平移变换:,2023/2/3,河北农业大学 张玉新,61,90、180的光栅旋转变换:,2023/2/3,河北农业大学 张玉新,62,任意角度的光栅旋转变换:,2023/2/3,河北农业大学 张玉新,63,光栅比例变换:,2023/2/3,河北农业大学 张玉新,64,直线的中点不变性;平行直线不变性;相交不变性;仅包含旋转、平移和反射的仿射变换维持角度和长度的不变性;比例变化可改变图形的大小和形状;错切变化引起图形角度关系的改变,甚至导致图形发生畸变。,6.3.9、二维几何变换的性质,2023/2/3,河北农业大学 张玉新,65,6.4 二维观察,6.4.1 基本概念在计算机图形学中,将在用户坐标系中需要进行观察和处理的一个坐标区域称为窗口(Window)将窗口映射到显示设备上的坐标区域称为视区(Viewport),2023/2/3,河北农业大学 张玉新,66,要将窗口内的图形在视区中显示出来,必须经过将窗口到视区的变换(Window-Viewport Transformation)处理,这种变换就是观察变换(Viewing Transformation)。,2023/2/3,河北农业大学 张玉新,67,变焦距效果,2023/2/3,河北农业大学 张玉新,68,整体放缩效果,漫游效果,2023/2/3,河北农业大学 张玉新,69,2023/2/3,河北农业大学 张玉新,70,观察坐标系(View Coordinate)和规格化设备坐标系(Normalized Device Coordinate)观察坐标系是依据窗口的方向和形状在用户坐标平面中定义的直角坐标系。规格化设备坐标系也是直角坐标系,它是将二维的设备坐标系规格化到(0.0,0.0)到(1.0,1.0)的坐标范围内形成的。,2023/2/3,河北农业大学 张玉新,71,引入了观察坐标系和规格化设备坐标系后,观察变换分为如下图所示的几个步骤,通常称为二维观察流程。,2023/2/3,河北农业大学 张玉新,72,6.4.2 用户坐标系到观察坐标系的变换,用户坐标系到观察坐标系的变换分由两个变换步骤合成:1.将观察坐标系原点移动到用户坐标系原点,2023/2/3,河北农业大学 张玉新,73,2.绕原点旋转使两坐标系重合,2023/2/3,河北农业大学 张玉新,74,6.4.3 窗口到视区的变换,2023/2/3,河北农业大学 张玉新,75,要将窗口内的点(xw,yw)映射到相对应的视区内的点(xv,yv)需进行以下步骤:(1)将窗口左下角点移至观察坐标系的坐标原点。平移矢 量?x y?(2)针对原点进行比例变换。比例因子?SX.SY(3)进行反平移。平移矢量?x y?,2023/2/3,河北农业大学 张玉新,76,6.4.4 规格化坐标(NDC)到设备坐标(DC)的变换,NDC,(0,0),(1,1),DC,(0,0),(1023,767),在NDC中的点(xin,yin)经过平移(Tx,Ty)和比例(Sx,Sy)变换后就可以得到DC中的点(xout,yout)。xout=Sx*xin+Tx yout=Sy*yin+Ty,2023/2/3,河北农业大学 张玉新,77,6.5 裁剪,在二维观察中,需要在观察坐标系下对窗口进行裁剪,即只保留窗口内的那部分图形,去掉窗口外的图形。假设窗口是标准矩形,即边与坐标轴平行的矩形,由上(y=wyt)、下(y=wyb)、左(x=wxl)、右(x=wxr)四条边描述。,2023/2/3,河北农业大学 张玉新,78,6.5.1 点的裁剪,2023/2/3,河北农业大学 张玉新,79,6.5.2 直线段的裁剪,假定直线段用p1(x1,y1)p2(x2,y2)表示。直线段和剪裁窗口的可能关系:完全落在窗口内完全落在窗口外与窗口边界相交,2023/2/3,河北农业大学 张玉新,80,实交点是直线段与窗口矩形边界的交点。虚交点则是直线段与窗口矩形边界延长线或直线段的延长线与窗口矩形边界的交点。,2023/2/3,河北农业大学 张玉新,81,1.Cohen-Sutherland算法基本思想:对每条直线段p1(x1,y1)p2(x2,y2)分三种情况处理:(1)直线段完全可见,“简取”之。(2)直线段完全不可见,“简弃”之。(3)直线段既不满足“简取”的条件,也不满足“简弃”的条件,求出线段与窗口某边的交点,在交点处把线段一分为二,其中必有一段完全在窗口外,可以弃之,再对另一段重复上述处理。,2023/2/3,河北农业大学 张玉新,82,编码:对于任一端点(x,y),根据其坐标所在的区域,赋予一个4位的二进制码D3D2D1D0。编码规则如下:若xwxr,则D1=1,否则D1=0;若ywyt,则D3=1,否则D3=0。,2023/2/3,河北农业大学 张玉新,83,裁剪过程,裁剪一条线段时,先求出端点p1和p2的编码code1和code2,然后:(1)若code1|code2=0,对直线段应简取之。(2)若code1&code20,对直线段可简弃之。(3)若上述两条件均不成立。则需求出直线段与窗口边界的交点。在交点处把线段一分为二,其中必有一段完全在窗口外,可以弃之。再对另一段重复进行上述处理,直到该线段完全被舍弃或者找到位于窗口内的一段线段为止。,2023/2/3,河北农业大学 张玉新,84,求交:假定直线的端点坐标为(x1,y1)和(x2,y2)左、右边界交点的计算:y y1+k(x-x1)上、下边界交点的计算:x x1+(y-y1)/k,2023/2/3,河北农业大学 张玉新,85,算法的步骤:(1)输入直线段的两端点坐标:p1(x1,y1)、p2(x2,y2),以及窗口的四条边界坐标:wyt、wyb、wxl和wxr。(2)对p1、p2进行编码:点p1的编码为code1,点p2的编码为code2。(3)若code1|code2=0,对直线段应简取之,转(6);否则,若code1&code20,对直线段可简弃之,转(7);当上述两条均不满足时,进行步骤(4)。(4)确保p1在窗口外部:若p1在窗口内,则交换p1和p2的坐标值和编码。(5)按左、右、上、下的顺序求出直线段与窗口边界的交点,并用该交点的坐标值替换p1的坐标值。也即在交点s处把线段一分为二,并去掉p1s这一段。考虑到p1是窗口外的一点,因此可以去掉p1s。转(2)。(6)用直线扫描转换算法画出当前的直线段p1p2。(7)算法结束。,演示,2023/2/3,河北农业大学 张玉新,86,例如:,特点:Cohen算法使用编码的方法实现了对完全可见和不可见直线段的快速接收和拒绝,使它在两类场合中非常高效:一是大窗口场合,其中大部分线段完全可见;另一类是窗口特别小的场合,其中大部分线段完全不可见。,2023/2/3,河北农业大学 张玉新,87,2.中点分割算法,基本思想:当对直线段不能简取也不能简弃时,简单地把线段等分为二段,对两段重复上述测试处理,直至每条线段完全在窗口内或完全在窗口外。,2023/2/3,河北农业大学 张玉新,88,算法步骤:(1)输入直线段的两端点坐标:p1(x1,y1)、p2(x2,y2),以及窗口的四条边界坐标:wyt、wyb、wxl和wxr。(2)对p1、p2进行编码:点p1的编码为code1,点p2的编码为code2。(3)若code1|code2=0,对直线段应简取之,保留当前直线段的端点坐标,转(5);否则,若code1&code20,对直线段可简弃之,转(5);当上述两条均不满足时,进行步骤(4)。(4)求出直线段的中点M,将p1M、p2M入栈。(5)当栈不空时,从栈中弹出一条直线段,取为p1p2,转(2)进行处理。否则,继续(6)。(6)当栈为空时,合并保留的直线段端点,得到窗口内的直线段p1p2。用直线扫描转换算法画出当前的直线段p1p2,算法结束。,动画演示,2023/2/3,河北农业大学 张玉新,89,中点分割算法的核心思想是通过二分逼近来确定直线段与窗口的交点。,2023/2/3,河北农业大学 张玉新,90,重新构造算法步骤:(1)若code1|code2=0,对直线段应简取之,结束;否则,若code1&code20,对直线段可简弃之,结束;当这两条均不满足时,进行步骤(2)。(2)找出该直线段离窗口边界最远的点和该直线段的中点。判中点是否在窗口内:若中点不在窗口内,则把中点和离窗口边界最远点构成的线段丢掉,以线段上的另一点和该中点再构成线段求其中点;如中点在窗口内,则又以中点和最远点构成线段,并求其中点,直到中点与窗口边界的坐标值在规定的误差范围内相等,则该中点就是该线段落在窗口内的一个端点坐标。(3)如另一点在窗口内,则经(2)即确定了该线段在窗口内的部分。如另一点不在窗口内,则该点和所求出的在窗口上的那一点构成一条线段,重复步骤(2),即可求出落在窗口内的另一点。,动画演示,2023/2/3,河北农业大学 张玉新,91,例如:,特点:由于求中点可以由加法和位移实现,避免使用乘除法,所以该算法易于硬件实现。,2023/2/3,河北农业大学 张玉新,92,3.Liang-Barsky算法(参数法),分析,推导,2023/2/3,河北农业大学 张玉新,93,Liang算法的基本出发点是直线的参数方程。给出直线的两个端点(x1,y1)、(x2,y2),令x=x2-x1y=y2-y1则直线的参数方程为:,3.Liang-Barsky算法(参数法),所以直线上的一个点要是位于窗口内,必须满足裁剪条件:,2023/2/3,河北农业大学 张玉新,94,参数化形式写出裁剪条件:可以统一表示为形式:,K=1,2,3,4,2023/2/3,河北农业大学 张玉新,95,特殊处理:,2023/2/3,河北农业大学 张玉新,96,如果pk0此时可以利用下式来直接求出直线与边界k的交点的参数u:当pk0,表示线段从裁剪边界及其延长线的内部延伸到外部。将此时的交点组称为上限组交点。在有交情形,下限组分布于直线起始点一侧,上限组分布于终点一侧。则下限组的max值和上限组的min值就对应于直线于窗口边界的实交点(假定存在)的参数值,如下:,pk0,k=1,2,3,4,umax=max(0,uk|pk0,uk|pk0),若此时umaxumin,则直线段在窗口外,弃之。若umaxumin,将二者代入参数方程就得到直线与窗口的两实点坐标。,2023/2/3,河北农业大学 张玉新,97,算法步骤:(1)输入直线段的两端点坐标:(x1,y1)和(x2,y2),以及窗口的四条边界坐标:wyt、wyb、wxl和wxr。(2)若x=0,则p1=p2=0。此时进一步判断是否满足q10且q20,则进一步计算umax和umin。算法转(5)。(3)若y=0,则p3=p4=0。此时进一步判断是否满足q30且q20,则进一步计算umax和umin。算法转(5)。(4)若上述两条均不满足,则有pk0(k=1,2,3,4)。此时计算umax和umin。(5)求得u1和u2后,进行判断:若umaxumin,则直线段在窗口外,算法转(7)。若umaxumin,利用直线的参数方程求得直线段在窗口内的两端点坐标。(6)利用直线的扫描转换算法绘制在窗口内的直线段。算法结束。,2023/2/3,河北农业大学 张玉新,98,6.5.3 多边形的裁剪,问题的提出:,2023/2/3,河北农业大学 张玉新,99,1.Sutherland-Hodgeman多边形裁剪(逐次多边形裁剪算法),基本思想,2023/2/3,河北农业大学 张玉新,100,2023/2/3,河北农业大学 张玉新,101,算法实施策略:为窗口各边界裁剪的多边形存储输入与输出顶点表。在窗口的一条裁剪边界处理完所有顶点后,其输出顶点表将用窗口的下一条边界继续裁剪。窗口的一条边以及延长线构成的裁剪线把平面分为两个区域,包含有窗口区域的一个域称为可见侧;不包含窗口区域的域为不可见侧。,2023/2/3,河北农业大学 张玉新,102,多边形的各条边的两端点S、P。它们与裁剪线的位置关系只有四种,2023/2/3,河北农业大学 张玉新,103,沿着多边形依次处理顶点会遇到四种情况:,演示,2023/2/3,河北农业大学 张玉新,104,一,2023/2/3,河北农业大学 张玉新,105,特点:,2023/2/3,河北农业大学 张玉新,106,2.Weiler-Atherton多边形裁剪假定按顺时针方向处理顶点,且将用户多边形定义为Ps,窗口矩形为Pw。算法从Ps的任一点出发,跟踪检测Ps的每一条边,当Ps与Pw相交时(实交点),按如下规则处理:(1)若是由不可见侧进入可见侧,则输出可见直线段,转(3);(2)若是由可见侧进入不可见侧,则从当前交点开始,沿窗口边界顺时针检测Pw的边,即用窗口的有效边界去裁剪Ps的边,找到Ps与Pw最靠近当前交点的另一交点,输出可见直线段和由当前交点到另一交点之间窗口边界上的线段,然后返回处理的当前交点;(3)沿着Ps处理各条边,直到处理完Ps的每一条边,回到起点为止。,2023/2/3,河北农业大学 张玉新,107,下图示了Weiler-Atherton算法裁剪凹多边形的过程和结果。,演示,2023/2/3,河北农业大学 张玉新,108,6.5.4 其它裁剪,1.曲线边界对象的裁剪曲线边界对象与矩形窗口和多边形窗口的裁剪加速方法,2023/2/3,河北农业大学 张玉新,109,2.字符裁剪,串精度:将包围字串的外接矩形对窗口作裁剪字符精度:将包围字的外接矩形对窗口作裁剪以及笔画象素精度:将笔划分解成直线段对窗口作裁剪 待裁剪字符串 串精度裁剪 字符精度裁剪 象素精度裁剪,演示,2023/2/3,河北农业大学 张玉新,110,3.外部裁剪保留落在裁剪区域外的图形部分、去掉裁剪区域内的所有图形,这种裁剪过程称为外部裁剪,也称空白裁剪。,

    注意事项

    本文(计算机图形学电子教案(精品) .ppt)为本站会员(仙人指路1688)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开