第5章 二维几何变换.ppt

上传人:medalangle361 文档编号:388559 上传时间:2018-10-12 格式:PPT 页数:54 大小:301.50KB
下载 相关 举报
第5章 二维几何变换.ppt_第1页
第1页 / 共54页
第5章 二维几何变换.ppt_第2页
第2页 / 共54页
第5章 二维几何变换.ppt_第3页
第3页 / 共54页
第5章 二维几何变换.ppt_第4页
第4页 / 共54页
第5章 二维几何变换.ppt_第5页
第5页 / 共54页
亲,该文档总共54页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、第5章 二维几何变换,基本变换 矩阵表示 其他特殊变换 复合变换 坐标系间的变换 变换的光栅方法,5.1 基本变换,几何变换的定义:改变对象坐标描述的变换称为几何变换,例如改变对象的方向、尺寸和形状。 在坐标系不变的情况下,由形体的几何位置或比例改变等引起的变换,5.1 二维基本变换,基本几何变换的类型 平移 旋转 变比,5.1.1 平移,平移 定义: 对象沿直线运动产生的变换 平移是一种钢体变换 参数:平移向量(Tx, Ty) 公式:x=x+Txy=y+Ty,矩阵表示: 使用列向量表示坐标位置x x tx P= P= T=y y tyP = P + T,5.1.1 2D平移,50,100,5

2、0,100,(-20,20),30,80,70,120,x,y,x,y,2D平移 举例,平移向量,5.1.2 旋转,旋转 定义: 对象沿园弧路径运动产生的变换 参数:旋转角,约定:逆时针为正 旋转点(xr,yr),5.1.2 旋转,针对坐标原点旋转公式:x=x*cos- y*sin y= x*sin+ y*cos,5.1.2 旋转,矩阵表示x x cos -sin P= P= R=y y sin cos P= R P,5.1.2 旋转,5.1.2 旋转,5.1. 2 旋转,针对任意点(Xr,Yr)旋转x= xr(xxr)*cos (yyr)*sin y= yr(xxr)*sin(yyr)*co

3、s 旋转变换的计算效率 改进:若很小cos 1,sin 注意累积误差的控制,旋转是一种钢体变换,x,y,变比 定义: 改变对象尺寸的变换 参数:缩放系数(Sx, Sy), 固定点(Xf,Yf) 公式:针对坐标原点 针对固定参考点(Xf,Yf)x=x*Sx x=Xf+(x-Xf)*Sxy=y*Sy y=Yf+(y-Yf)*Sy,5.1.3 2D 缩放 (变比,比例变换),矩阵表示x x sx 0 P= P= S=y y 0 sy P = S P,5.1.3 2D 缩放 (变比),1,1,缩放变换 (2,1),1,2,x,y,x,y,1,2D缩放 举例,2D缩放讨论,如果|Sx|或|Sy|大于1,

4、则表示图形在X轴方向或Y轴方向放大; 如果|Sx|或|Sy|小于1,则表示图形在X轴方向或Y轴方向缩小; 如果|Sx|=|Sy|,则表示均匀缩放; 如果|Sx|Sy|,则表示差值缩放;(非均匀缩放) 如果|Sx|或|Sy|等于1,则表示图形在X轴方向或Y轴方向不变; 如果Sx或Sy小于零,则表示图形在X轴方向或Y轴方向作镜面变换。,2D缩放讨论,缩放变换后,对象可能被重定位,1,1,缩放变换 (2,1),1,2,x,y,x,y,1,5.2 2D变换的矩阵表示,点 (x,y) (x, y, 1)T 2D 图形 3xn 基本变换参数 3x3 2D 图形变换坐标计算: 最终坐标 = 变换矩阵* 原坐

5、标,平移变换 x 1 0 tx xy = 0 1 ty y1 0 0 1 1P=T(tx,ty)*P,2D变换的矩阵表示,旋转变换 x cos - sin 0 xy = sin cos 0 y1 0 0 1 1P=R()*P,2D变换的矩阵表示,变比变换 x sx 0 0 xy = 0 sy 0 y1 0 0 1 1P=S(sx,sy)*P,2D变换的矩阵表示,通用变换方程: x A B C xy = D E F y1 0 0 1 1P=T*P,2D变换的矩阵表示,连接特性 A*B*C = (A*B)*C = A*(B*C)A*B B*A,通用变换矩阵 x rsxx rsxy trsx xy

6、= rsyx rsyy trsy y1 0 0 1 1计算效率,5.3 复合变换,连续平移 连续旋转 连续变比 针对任意点的变换 针对任意方向的变换 实现,5.3.1 连续平移,(tx1,ty1),(tx2,ty2),. (txn,tyn)P = T(txn,tyn)*.* T(tx2,ty2) * T (tx1,ty1 )* PT(tx2,ty2)*T(tx1,ty1)=T(tx1+tx2, ty1+ty2),5.3.2 连续旋转,(1), (2), (n) P = R(n)* .* R(2) * R(1) * PR(2)*R(1) = R(1+2),5.3.3 连续变比,(sx1,sy1)

7、, (sx2,sy2),., (sxn,syn)P = S(sxn,syn)*.*S(sx2,sy2)*S(sx1,sy1)*PS(sx2,sy2)*S(sx1,sy1)=S(sx1*sx2,sy1*sy2),5.3.4 针对任意点变换,方法 平移对象使基准点移动到坐标原点 针对原点做指定变换 反向平移对象使基准点回到原位置 举例,1、 针对固定点缩放,x,y,(xf,yf),y,x,x,y,x,y,1 0 xf 0 1 yf 0 0 1,sx 0 00 sy 00 0 1,1 0 -xf 0 1 -yf 0 0 1,2、 针对固定点旋转,1 0 xf 0 1 yf 0 0 1,cos - s

8、in 0sin cos 00 0 1,1 0 -xf 0 1 -yf 0 0 1,3、 针对任意方向变换,方法 旋转对象使指定方向与坐标轴方向重合 针对坐标轴方向做指定变换 反向旋转使方向回到原方向 例,例:沿指定方向缩放,cos- -sin- 0 sin- cos- 00 0 1,Sx 0 00 Sy 00 0 1,x,y,S2,S1,cos -sin 0 sin cos 00 0 1,例,Cos-45 -sin-45 0 sin-45 cos-45 00 0 1,1 0 00 2 00 0 1,x,y,1,1,S1=1, S2=2 =45,x,(0.5,1.5),y,cos45 -sin4

9、5 0 sin45 cos45 00 0 1,1.5 0.5 00.5 1.5 00 0 1,T=,(2,2),(1.5,0.5),(1,1),复合变换举例,例1:对一线段先放大2倍(即Sx=Sy=2),再平移Tx=10,Ty=0。,y,x,(x,y),x,y,(x,y),y,x,(x,y),Tx,组合变换举例,例2:对一图形,绕平面上的一点(Cx,Cy) 作旋转变换,旋转角度为, 计算其变换矩阵。 解:旋转变换是绕坐标原点旋转的, 此处不能直接使用旋转变换, 应先将点(Cx,Cy)平移至原点, 然后作旋转变换,最后再把该点移回原处。,(Cx,Cy),y,x,组合变换举例,设点(x,y)为图形

10、中的点,点(x,y)为点(x,y)经变换后的坐标,则: P =T(Cx,Cy)*R()*T(-Cx,-Cy)*P 则组合矩阵为:M=T1(Cx,Cy)*R2()* T1(-Cx,-Cy),5.3.6实现,P154P155,5.4 2D 其他变换,反射:产生对象的镜像 沿X轴反射 沿Y轴反射 沿原点反射 沿y=x 45度线反射 错切:使对象发生形变 沿X方向错切 沿Y方向错切,5.4.1 反射,沿x轴反射1 0 00 -1 00 0 1,1,2,3,2,3,1,x,y,沿y轴反射-1 0 00 1 00 0 1,1,2,3,1,3,2,x,y,5.4.1 反射,沿(0,0)反射-1 0 00 -

11、1 00 0 1,1,2,3,1,3,2,x,y,5.4.1 反射,沿直线y=x反射,cos-45 -sin-45 0 sin-45 cos-45 00 0 1,1 0 00 -1 00 0 1,x,y,S1,cos45 -sin45 0 sin45 cos45 00 0 1,y=x,0 1 01 0 00 0 1,0 1 01 0 00 0 1,y=x,1,2,1,2,x,y,沿直线 y=x反射,3,3,0 -1 0-1 0 00 0 1,y=-x,1,2,1,2,x,y,沿直线 y=x反射,3,3,5.4.2 错切,错切:是一种使对象形状发生变化的变换 参数:错切系数,y,x,5.4.2

12、沿x轴方向错切,公式:x=x+y*shx (shx0) y=y shx为错切系数 shx符号决定了图形向右或向左变形,y,x,y,x,1 SHx 00 1 00 0 1,沿x轴方向错切,1 SHx 00 1 00 0 1,x,y,1,1,2,3,(2,1),(3,1),x,y,1,1,SHx=2,(1,1),1 0 0SHy 1 00 0 1,x,y,1,1,2,3,2,(1,3),(1,2),x,y,1,1,SHy=2,(1,1),5.4.2 沿y轴方向错切,5.5 坐标系间的变换,x,y,X,Y,x0,y0,从xy坐标变换到xy坐标平移: (x0,y0) 到 (0,0)旋转:使x轴与x轴重

13、合 M = R(-) * T(-x0,-y0),5.8 变换的光栅方法,思想bitBlt 位块移动 pixBlt 像素块移动 将像素块直接复制到显示缓冲区的新位置上,1 2 3 4 5 6 7 8 9 10 11 12,3 6 9 12 2 5 8 11 1 4 7 10,12 11 10 9 8 7 6 5 4 3 2 1,初始阵列,R(90),R(180),旋转90度整数倍旋转通过操纵像素块中像素所在的行列位置实现;而非90度整数倍的旋转,需要更多的计算。,变换的光栅方法,缩放 通过缩放原始像素区域并映射到一组目标像素区域上,然后根据两个区域的重叠情况设置目标像素的亮度,8x6 Sx =Sy =0.5,变换的光栅方法,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 教学课件 > 大学教育

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1