版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机图形学第三章几何变换主要内容3.1仿射变换3.2平移、旋转和缩放3.3变换的级联(复合)3.4窗口到视区的坐标变换3.5虚拟跟踪球3.6四元数3.7计算机动画3.1仿射变换变换是一个函数,它把一个点(或向量)映射成另一个点(或向量);如图,Q=T(P)是点的变换,而v=T(u)是向量的变换;如果使用齐次坐标,那么就能把向量和点都表示成四维列矩阵,因此点和向量的变化可以用同一个函数来定义。Q=T(P)v=T(u)3.1仿射变换如果f是线性函数,即对于任何标量α和β以及任何两个顶点(或者向量)p和q,都有f(αp+βq)=αf(p)+βf(q),这样的变换就称为仿射变换。因为变换的线性组合等于线性组合的变换,所以只需要知道p和q的变换就可以求出它们的线性组合的变换,这样就无须计算每个线性组合的变换。3.1仿射变换由于变换是将点(或向量)由一种形式转换为另外一种形式,因此:当用齐次坐标表示变换的点(或向量)时,点(或向量)可以一维行矩阵或者一维列矩阵表示。变换也就可以表达为矩阵乘法的形式v=Cu,其中C为4×4的矩阵,形式如下。从该矩阵可以看出,点的变换有12个自由度,而向量的变换只有9个自由度。3.1仿射变换仿射变换将直线映射为直线。因为
p(α)=p0
+αd
Cp(α)=Cp0+αCd.所以,为了确定变换后的线段,只需对两个端点进行变换即可。因此,可以用流水线模型来实现图形系统,流水线中的仿射变换单元只需对端点进行变换,在光栅化阶段根据端点的处理结果就可以生成内部的点。计算机图形学中用到的大多数变换都是仿射变换,包括旋转、平移和缩放。3.2平移、旋转和缩放平移平移(translate,放置)变换就是把点沿着给定的方向一定固定距离。因此,平移变换只需要给定平移向量即可,P'=P+d。平移变换有三个自由度,即平移向量3个坐标轴方向的分量。3.2平移、旋转和缩放平移平移变换的齐次坐标表示如果用齐次坐标表示,则有P=[xyz1]TP'=[x'y'z'1]Td=[dxdydz0]T因此有:P'=P+d或者x'=x+dxy'=y+dyz'=z+dz3.2平移、旋转和缩放
3.2平移、旋转和缩放
平移变换实例3.2平移、旋转和缩放二维旋转假设基于原点旋转Φ,半径不变,角度增加θx’=xcosq–ysinqy’=xsinq+ycosqx=rcosfy=rsinfx’=rcos(f+q)y’=rsin(f+q)二维旋转变换实例二维旋转变换实例(角度)3.2平移、旋转和缩放二维旋转假设绕某个定点旋转θ呢?3.2平移、旋转和缩放关于Z轴的旋转旋转二维旋转所有点的z值不变,与在三维中做关于Z轴的旋转操作等价,有:在齐次坐标表示下,此变换的矩阵形式为:
P’=RZ(θ)P
这里RZ(θ)=
x'=xcosq–ysinqy'=xsinq+ycosqz'=z3.2平移、旋转和缩放关于X、Y轴的旋转旋转与关于Z轴的旋转类似,关于X轴旋转,x不变,变换矩阵为:Rx(q)=与关于Z轴的旋转类似,关于Y轴旋转,y不变,变换矩阵为:
Ry(q)=
3.2平移、旋转和缩放
3.2平移、旋转和缩放缩放变换与平移变换和旋转变换不同,缩放变换是一类非刚性的变换,它可使对象变大或者缩小。
3.2平移、旋转和缩放
缩放变换实例3.2平移、旋转和缩放
3.2平移、旋转和缩放
3.2平移、旋转和缩放错(剪)切变换错(剪)切变换也时非刚性变换,对象在某一方向发生了错(剪)切,如图所示。
3.2平移、旋转和缩放
3.3变换的级联(复合)基于以上基本变换,可以看到,通过相乘(级联),可以将这些基本变换组合起来。假设对p执行了三个变换得到q,因为矩阵乘法满足结合率,因此变换序列可以表示为:q=CBAp=C(B(Ap))注意,右边的矩阵是首先被应用的矩阵,变换的顺序是不可交换的如果对多点进行变换,可以首先计算M=CBA,然后对每个点计算q=Mp即可3.3变换的级联(复合)基于任一定点的旋转变换(绕Z轴旋转)由于基本旋转变换只能基于原点进行,所以将此变换的策略定为:1、将定点移动至原点,2、旋转,3、将定点移动到原来的位置3.3变换的级联(复合)基于任一定点的旋转变换(绕Z轴旋转)因此,变换矩阵表示为:M=T(Pf)Rz(θ)T(-Pf)经计算,变换矩阵为:3.3变换的级联(复合)实例变换由复合变换可以引申出一种建模方法,即:一次定义一类对象,对象的大小、位置和方向可以视方便而定;对象在场景中的每一次出现都是这种对象原型的一个实例。3.3变换的级联(复合)实例变换实例变换的过程一般如图所示:首先定义原始大小的对象;再根据需要依次进行缩放、旋转和平移变换,即可得到最终的实例;变换矩阵即为M=TRS3.3变换的级联(复合)从前可以看到,平移、旋转、缩放甚至错切等基本变换以及复合变换都是用4×4矩阵表示。因此,可用4×4矩阵操作统一表示二维和三维几何变换。缩放、旋转、对称、错切等
平移投影
整体缩放3.4窗口到视区的坐标变换窗口到视区的坐标变换也称为视口变换窗口是在二维世界坐标系或观察坐标系中的观察平面(一个与观察坐标系坐标平面平行的投影面,也称画面)中定义的一个矩形区域,只有在该区域内的图形才能在设备坐标系下输出,而窗口外的部分则被裁掉。视区是在屏幕坐标系(它是设备坐标系)中定义的一个矩形区域,用于输出窗口中的图形。视区决定了窗口中的图形要显示于屏幕上的位置和大小,它是一个有限的整数域,应小于等于屏幕区域。3.4窗口到视区的坐标变换由于窗口和视区在不同的坐标系中定义,因此,把窗口中的图形信息输出到视区之前,需要进行坐标变换,即把用户坐标系的坐标值转化为设备(屏幕)坐标系的坐标值,称这个变换过程为窗口-视区变换。窗口与视区可分别用其四条边界的坐标来表示3.4窗口到视区的坐标变换设在用户坐标系下定义的窗口为:左下角点坐标(Wxl,Wyb),右上角点坐标(Wxr,Wyt);在设备坐标系下定义的视区为:左下角点坐标(Vxl,Vyb),右上角点坐标(Vxr,Vyt)。将用户坐标系中的点(xw,yw)映射到设备坐标系中的点(xv,yv),有下列等式:因此,窗口中一点(xw,yw)变换到视区中的对应点(xv,yv),二者之间的关系为:若令:则有:
3.5虚拟跟踪球由于屏幕是平面的,现有的鼠标和键盘是针对二维设计的,所以前面介绍的几何变换并不能直接提供一个友好的三维应用程序接口有两种方法来构造一个友好的三维应用程序接口一种是在屏幕区域利用鼠标位置来控制两个轴的旋转一种是利用鼠标和显示器可生成一个虚拟的跟踪球3.5虚拟跟踪球
3.5虚拟跟踪球
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.6四元数
3.7计算机动画动画是运动的艺术,是一系列图形图像的顺序显示所产生的视觉效果。一般动画的播放速度是15帧/s以上,电影业的标准是24帧/s,欧洲的PAL制式标准是25帧/s,而美国的NTSC制式是30帧/s。计算机动画是指用绘制程序生成一系列的景物画面,通过足够快的速度显示一系列的单个帧以产生活动的感觉。计算机动画是计算机和艺术的结合。它综合运用计算机图形学、物理学、机械学、心理学、美学、生命科学和人工智能等学科领域的只是来研究客观存在或高度抽象的物体的运动表现形式。3.7计算机动画随着计算机图形学和硬件技术的快速发展,人们已经可以用计算机生成高质量的图像,计算机动画不再是陌生的名词,它已渗透到人们生活的各个角落。1993年,电影《侏罗纪公园》采用动画特技制作的恐龙片段获得了该年度奥斯卡最佳视觉效果奖。1996电影《玩具总动员》上映,该片不仅获得了破记录的票房,而且作为第一部完全用计算机动画制作的长篇动画,给电影制作开辟了一条新的道路。1998年放映的电影《泰坦尼克》中,船翻沉时乘客的落水镜头有许多是采用计算机合成的,从而避免了实物拍摄中的高难度、高危险动作。电影《阿凡达》采用全新的立体拍摄系统,仅用了6周时间,便在全球收入18亿美元。时长仅160分钟,60%的画面采用计算机动画制作,由近800名特效人员,历时4年完成。3.7计算机动画计算机动画不仅用于商业广告、影视特技,还广泛应用于教育、军事领域,例如教学演示、战斗演习、飞行模拟等。简单地说,计算机动画是指用绘制程序生成一系列的景物画面,其中,当前帧画面是对前一帧画面的部分修改,所有这些帧的画面组成一部计算机动画。计算机动画的分类方法很多按不同的动画生成技术可以将计算机动画分为关键帧动画、变形物体的动画、过程动画、关节动画和人体动画,以及基于物理的动画等;按物体是否变形可分为刚体动画和变形(柔性)动画。3.7计算机动画实现计算机动画时一般至少需要一个帧缓存器,并在缓存器中存储和操作像素数据。只有一个缓存(帧缓存中的颜色缓存)用于绘制和显示图形的模型称为单缓存。由于是计算后直接绘制,单缓存效率比较差,造成对象不完整,而且还会出现屏幕闪烁。为了实现平滑动画以及消除画面的闪烁感,可以采用双缓存技术。程序使用两个缓存解决图形计算和绘制之间的矛盾,习惯上称之为前端缓存和后端缓存。前端缓存(frontbuffer)是指用于显示图像的那个缓存,而后端缓存(backbuffer)是指用于存储用户绘制对象内容的那个缓存。当后端缓存中的内容被要求显示时,缓存交换机制就会将它复制到前端缓存。3.7计算机动画双缓存技术可以生成平滑的动画,最好把一副完全画好的图像显示一定的时间,然后提供下一幅画面,缓存图像按此方式交替出现,从一幅图像变化到下一幅图像,由于时间极短,人眼不会感觉到这种变化。WebGL触发缓存交换并控制显示内容重绘速度有两种方法,一种是使用使用定时器,一种是使用requestAnimFrame。根据setInterva
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年专题研究校园安全工作方案
- 2026年仓库安全分享小案例分析报告
- 苏教版科学小学五年级上册 期末测试卷及答案2
- 苏教版科学五年级下册全册单元基础练习含答案
- 2026公司面试题目及答案案例
- 2026光影变化面试题及答案
- 数控技术专业学生专业技能考核标准(高职)
- 新智能温室控制系统设计
- 司炉工安全操作规程注意事项(30篇)
- 受限空间施工方案模板
- 全球及中国医药喷雾泵市场竞争风险及供需前景预测研究报告
- 动画运动规律
- 消防阀门更换施工方案(3篇)
- 2021建筑隔震设计标准
- 2026年阿里云ACP认证练习题及答案
- 模袋混凝土护坡工程实施措施
- 雨课堂学堂在线学堂云《云计算与大数据技术(北京联合大学 )》单元测试考核答案
- 2024年德阳辅警协警招聘考试真题含答案详解(完整版)
- 2024人教版七年级数学上册全册教案
- 如何成为行业专家
- 2025济南水务集团有限公司招聘笔试相关情况模拟试卷及完整答案详解
评论
0/150
提交评论