计算机图形学 7、图形变换.ppt

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机图形学 7、图形变换

三维几何变换 旋转 旋转复杂一点,包括绕x轴,y轴,z轴,任意轴的旋转。 绕x轴,y轴,z轴的旋转矩阵如下: 三维几何变换 绕任意轴的旋转 x y z X’ x y z Z’ Y’ 三维几何变换 错切变换 以z轴为依赖轴,则x,y坐标依z坐标呈线性变换。 三维几何变换 对称变换:在3维空间,对称单元是平面。 针对任意平面的变换: x z y x z y y’ z’ x’ 坐标系之间的变换 同一图形对象在坐标系与辅助坐标系之间的表示,涉及到坐标系之间的变换。 X Y X’ Y’ TR=? 坐标系之间的变换 空间点(一个向量)在一个坐标系中的坐标等于该向量在坐标轴上的投影 A向量在B向量上的投影值等于A向量与B向量的单位向量之间的内积(点乘) X’轴的单位方向矢量为(a11,a12) ,可表示为: a11i+a12j; Y’轴的单位方向矢量为(a21,a22) 点P(x,y)可用矢量表示为: x i+ y j 点P(x,y)在X’轴上的投影可用点乘得到, 即x’=a11 x +a12y 同样y’=a21 x +a22y 坐标系原点重合 X Y X’ Y’ P TR:正交矩阵 TR-1=TRT 坐标系之间的变换 X Y X’ Y’ P a11 a12 建辅助坐标系o”x”y” 平移,变换,平移。即 坐标系原点不重合 X” Y” X’ Y’ TR 三维坐标系之间的变换 坐标系原点重合 坐标系原点不重合 * 第七章 图形变换 图形变换是计算机图形学的基础内容之一,是图形显示过程中必不可少的环节。 为了从不同的方向观察对象,要求对对象做旋转变换;为了仔细观察对象,要求对对象做缩放变换;为了从一个观察点转移到另一个观察点,要求对对象做平移变换。 通过图形变换,也可由简单的图形生成复杂的图形,变换本身也是描述图形的有力工具。 常见的图形变换有:图形的平移,旋转,缩放,对称变换,剪切变换。 变换的实质是:根据模型原有的位置信息和变化的条件,计算出变换后的位置,并加以显示。 二维图形平移 二维图形平移是将图形上任意一点P(x,y)在x轴方向y轴方向分别平移距离tx,ty,则变换后的新坐标 x’=x+tx y’=y+ty 用矩阵表示 p P’ tx ty 二维图形旋转 二维图形旋转是将图形绕圆点旋转。图形上任意一点P(x,y)旋转后的位置为P’(x’,y’)。 若|OP|=R,由图可知: x=Rcosθ,y=Rsinθ x’=Rcos(θ+α) =Rcosθcosα-Rsinθsinα =x cosα-y sinα y’=Rsin (θ+α) =x sinα+ y cosα p P’ y x x’ y’ θ α O 用矩阵表示: R 二维图形缩放 二维图形缩放是将图形上任意一点P(x,y)在x轴方向缩放sx倍,y轴方向缩放sy倍,则变换后的新坐标 x’= sx x y’= sy y 用矩阵表示 p P’ S 齐次坐标与二维变换的矩阵表示 旋转和缩放可以用一个2X2矩阵表示,平移不行 我们希望将一种变换用一个矩阵来表示,这样就可以用矩阵合并的方法将一系列的简单变换用一个复杂变换来表示。这不仅可以节省运算量,还可以明确一个矩阵代表一种变换的概念。 齐次坐标与二维变换的矩阵表示 为了将平移也用矩阵表示,点(x,y)用齐次坐标(x,y,h)表示。因为第3维h仅仅是为了增加一个维数,没有其他实际意义,用1代替。即一个二维平面点(x,y)用齐次坐标(x,y,1)表示。 齐次坐标与二维变换的矩阵表示 平移: 旋转: 缩放: 齐次坐标与二维变换的矩阵表示 在齐次坐标表示下,所有的二维变换都可以用3X3矩阵表示。 平移变换矩阵T(tx,ty) 旋转变换矩阵R(α) 缩放变换矩阵T(Sx,Sy) 齐次坐标与二维变换的矩阵表示 二维变换可以统一表示为 表示变换后的模型上任意一点 表示变换前的模型上任意一点 表示变换矩阵,或者说,一个矩阵表示一种变换 复合变换 一个复杂变换也可以用一系列简单变换(旋转、平移、缩放)实现。 绕任意点的旋转 平移图形,使任意点与原点重合 绕原点旋转 平移图形,使任意点回到原处 以任意点为参考点的缩放 平移图形,使任意点与原点重合 以原点为参考点缩放 平移图形,使任意点回到原处 绕任意点的旋转 (X0,y0) (X0,y0) α (X0,y0) (X0,y0) α (X0,y0) 绕任意点的旋转 用矩阵表示各个过程 绕任意点的旋转 整个变换过程 复合矩阵可以减少计算量 不进行矩阵合并 一个3×3矩阵与一个点向量相乘得到一个点向量,需要9次乘法(忽略加法)。 3次变换需要3×9=27次乘法。 复合矩阵可以减少计算量 先进行矩阵合并 一个3×3矩阵与一个3×3矩阵相乘得到一个3×3矩阵,需要27次乘法(忽略加法)。

文档评论(0)

zhuliyan1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档