1 / 41

第三章 图形变换与输出

第三章 图形变换与输出. 3.1 图形的几何变换. 3.2 坐标系统及其变换. 3.3 图元输出与输出属性. 3.1 图形的几何变换. 基本的几何变换研究物体坐标在直角坐标系内的平移、 旋转和变比的规律。. 主要介绍 二维图形几何变换 三维图形几何变换 参数图形几何变换. ( x’ , y’ ). x. (T x ,T y ). ( x , y ). 3.1 图形的几何变换. 3.1.1 二维图形几何变换. 一、基本变换 ⒈ 平移 (Translation). 将图形对象从一个位置 (x, y) 移

genero
Télécharger la présentation

第三章 图形变换与输出

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第三章 图形变换与输出 3.1 图形的几何变换 3.2 坐标系统及其变换 3.3 图元输出与输出属性

  2. 3.1 图形的几何变换 基本的几何变换研究物体坐标在直角坐标系内的平移、 旋转和变比的规律。 主要介绍 • 二维图形几何变换 • 三维图形几何变换 • 参数图形几何变换

  3. (x’, y’) x (Tx,Ty) (x, y) 3.1 图形的几何变换 3.1.1 二维图形几何变换 一、基本变换 ⒈平移(Translation) 将图形对象从一个位置(x, y)移 到另一个位置(x′,y′)的变换。 x = x+Tx y = y+Ty

  4. 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) 一、基本变换 ⒉旋转(Rotation) y q 点(x, y)围绕原点逆时针转 动一个角度, (x’, y’) (x, y) x = x cos  y sin y = y cos + x sin f x

  5. (x’, y’) y q (x, y) (xr, yr) f x x = xr+(xxr)cos (yyr)sin y = yr+(yyr)cos +(xxr)sin 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) 一、基本变换 ⒉旋转(Rotation) 将以某个参考点(xr, yr)为圆心, 将对象上的各点(x, y)围绕圆心转 动一个逆时针角度. x = x cos  y sin y = y cos + x sin newx = xxr newy = yyr newx = newx cos  newy sin newy = newy cos + newx sin x = newx + xr y = newy + yr

  6. 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) y 一、基本变换 ⒊变比(Scaling) (x’, y’) 使对象按比例因子(Sx, Sy)放大或缩 小的变换 x = x · Sx y = y · Sy (x, y) (3.1) x 固定点变比(scaling relative to a fixed point)。以a为固定点 1((1)作平移Tx=xa,Ty=ya; 2((2)按式(3.1)作变比; 3((3)作1)的逆变换,即作平移Tx=xa,Ty=ya。

  7. 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) 一、基本变换 ⒊变比(Scaling) 当比例因子Sx或Sy小于0时,对象不仅变化大小,而且分别按x轴或 y轴被反射

  8. 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) 二、变换矩阵 ⒉ 平的矩阵运算表示为 (3.2) 简记为p=p·T(Tx, Ty)。其中,p=[xy 1],p=[xy 1]。 表示平移矩阵。

  9. 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) 二、变换矩阵 ⒉ 旋转的矩阵运算表示为 (3.2) 简记为p=pR(),其中R()表示旋转矩阵。

  10. 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) 二、变换矩阵 ⒊ 变比的矩阵运算表示为 (3.3) 简记为p=pS(Sx, Sy),其中(Sx, Sy)表示变化矩阵。

  11. y x o 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) 三、级联变换(Composite Transformation)   对于复杂的图形变换,需要通过若干个变换矩阵的级联才能实 现。这里特别要注意的是矩阵级联的顺序,由于矩阵的乘法运算不 适用交换率,因此矩阵级联的顺序不同所得到的变换结果也不相同。 例如:对任意直线的对称变换(直线方程为 Ax + By + C = 0)

  12. 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) 三、级联变换(Composite Transformation) y y x x x o o cosα-sinα 0 T2= sinα cosα 0 0 0 1 1 0 0 T1 = 0 1 0 C/A 0 1

  13. 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) 三、级联变换(Composite Transformation) y y y x x x o o o 1 0 0 T3 = 0 -1 0 0 0 1 cosα sinα 0 T4 = -sinα cosα 0 0 0 1 1 0 0 T5= 0 1 0 -C/A 0 1

  14. 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) 三、级联变换(Composite Transformation) 组合变换矩阵为: cos2α sin2α 0 T =T1×T2×T3×T4×T5= sin2α -cos2α 0 (cos2α-1)C/A sin2α*C/A 1 [xy 1]= [xy 1]T

  15. 3.1 图形的几何变换 3.1.1 二维图形几何变换(续) 四、二维几何变换的指令 ⒈建立变换矩阵的指令为 creat_transformation_matrix(xf, yf, Sx, Sy, xr, yr, , Tx, Ty, matrix); ⒉积累变换的指令为 accumulate_transformation_matrix(matrix1, matrix2, matrix); ⒊坐标变换的指令为 set_segment_transformation(Id, matrix);

  16. 3.1 图形的几何变换 3.1.2 三维图形几何变换 (x’, y’, z’) ⒈旋转 (x, y, z) 1) 绕z轴旋转的公式为 x = xcos ysin  y = xsin +ycos  z = z 矩阵运算的表达式为  x z

  17. 3.1 图形的几何变换 3.1.2 三维图形几何变换(续) y ⒈旋转 (x, y, z) (x’, y’, z’) 2) 绕x轴旋转的公式为 x = x y = ycos zsin z = ysin +zcos 矩阵运算的表达式为  x z

  18. 3.1 图形的几何变换 3.1.2 三维图形几何变换(续) y ⒈旋转 (x’, y’, z’) (x, y, z)  3) 绕y轴旋转的公式为 x = zsin +xcos  y = y z = zcos xsin 矩阵运算的表达式为 x z

  19. 3.1 图形的几何变换 3.1.2 三维图形几何变换(续) ⒈旋转 4) 绕任意轴旋转 图3.6 绕任意轴P1P2旋转的前4个步骤

  20. 3.1 图形的几何变换 3.1.2 三维图形几何变换(续) ⒉变比 设Sx、Sy、Sz是物体在3个坐标轴方向的比例变化量,则有公式 x = xSx,y = ySy,z = zSz 矩阵运算的表达式为

  21. 3.1 图形的几何变换 3.1.3 参数图形几何变换(续) ⒈圆锥曲线的几何变换 圆锥曲线的二次方程是Ax2+Bxy+Cy2+Dx+Ey+F=0,其相应的矩阵表达式是 简记为XSXT=0。 ⑴平移变换。若对圆锥曲线进行平移变换,平移矩阵是 Tr=      , 则平移后的圆锥曲线矩阵方程是XTrSTrTXT=0。

  22. 3.1 图形的几何变换 3.1.3 参数图形几何变换(续) ⒈圆锥曲线的几何变换 ⑵旋转变换。若对圆锥曲线相对坐标原点作旋转变换,旋转变换 矩阵是 R=       , 则旋转后的圆锥曲线矩阵方程是XRSRTXT=0。 若对圆锥曲线相对(m, n)点作旋转角变换,则旋转后的圆锥曲线 是上述Tr、R变换的复合变换,变换后圆锥曲线的矩阵方程是 XTrRSRTTrTXT=0。 ⑶比例变换。若对圆锥曲线相对(m, n)点进行比例变换,比例变 换矩阵为 ST=       , 则变换后圆锥曲线的矩阵方程是XTrSTSSTTTrTXT=0。

  23. 3.1 图形的几何变换 3.1.3 参数图形几何变换(续) ⒉参数曲线、曲面的几何变换 若指定一个平移矢量t,对曲线平移t,即对曲线上的每一点P都 平移t。对平移后的点P*有 P* = P+t 对于参数曲线和曲面的几何系数矩阵B和代数系数矩阵A,可以直 接实现平移变换,即有 B* = B+T,T= [tt 0 0]T B*是经平移后参数曲线的几何系数矩阵,变换结果如图所示。

  24. 3.2 坐标系统及其变换 3.2.1 坐标系统 1. 世界坐标系(World Coordinates) 为了描述被处理的对象,要在对象所在 的空间中定义一个坐标系,这个坐标系的长 度单位和坐标轴的方向要适合对被处理对象 的描述,这个坐标系通常就称之为世界坐标 系或用户坐标系。世界坐标系一般采用右手 三维笛卡儿坐标系。 z o y x

  25. 3.2 坐标系统及其变换 3.2.1 坐标系统(续) 2. 观察坐标系(View Coordinates) 产生三维物体的视图,必须规定观 察点(视点)和观察方向。 好比照相时选择拍摄的位置和方向。 左手笛卡儿坐标系(上图):观察坐标 系的原点通常设置在观察点(视点),Z轴作 为观察方向。 右手笛卡儿坐标系:视点确定在Z轴 上的某一个位置,Z轴仍为观察方向(下图)。 y z x o 视点 y x o z 视点

  26. 3.2 坐标系统及其变换 3.2.1 坐标系统(续) 3. 设备坐标系(Device Coordinates)   与图形设备相关连的坐标系叫设备坐标系。 例如,显示器以分辨率确定坐标单位,原点在左下角或左上角; 绘图机绘图平面以绘图精度确定坐标单位,原点一般在左下角。 4. 规格化设备坐标系(Normal Device Coordinates) 为了使图形处理过程做到与设备无关,通常采用一种虚拟设备 的方法来处理,也就是图形处理的结果是按照一种虚拟设备的坐 标规定耒输出的。这种设备坐标规定为0≤X≤1,0≤Y≤1,这种 坐标系称之为规格化设备坐标系。

  27. 3.1 图形的几何变换 3.2.2 规格化变换与设备坐标变换 ⒈规格化变换 从窗口到视区的变换,称为规格化变换(Normalization Transformation)。 y y V(视图区) W(窗口) vyT wyT (wx,wy) (vx,vy) vyB wyB x x o o wxL wxR vxL vxR

  28. 3.1 图形的几何变换 3.2.2 规格化变换与设备坐标变换(续) ⒈规格化变换 = vx – vxL wx – wxL 由两图的比例关系: vxR – vxL wxR – wxL vy – vyB wy – wyB vyT–vyB wyT –wyB 可得: vxR – vxL wxR – wxL vyT –vyB wyT –wyB = vx = • ( wx – wxL ) + vxL • ( wy – wyB ) + vyB vy =

  29. 3.1 图形的几何变换 3.2.2 规格化变换与设备坐标变换(续) ⒉窗口操作 ⑴视野的变化(zooming)。 ⑵摇镜头(panning)。 ⑶多重窗口(multiple window)。

  30. 3.1 图形的几何变换 3.2.2 规格化变换与设备坐标变换(续) ⒊从规格化坐标(NDC)到设备坐标(DC)的变换 ⑴通常采用的公式 xDC=Sx·xNDC+dx,yDC=Sy·yNDC+dy ⑵方向的考虑 ⑶对设备坐标中像素中心的变换

  31. 3.1 图形的几何变换 3.2.3 投影变换 投影(project)是一种使三维对象映射为二维对象的变换。它可描述为 project(object(x, y, z))→object(x, y, z) 投影的要素除投影对象、投影面外,还有投影线。 按照投影线角度的不同,有两种基本投影方法: ⑴平行投影(parallel projection)。  它使用一组平行投影将三维对象投影到投影平面上去。  ⑵透视投影(perspective projection)。它使用一组由投影中心 产生的放射投影线,将三维对象投影到投影平面上去。

  32. 3.1 图形的几何变换 3.2.3 投影变换(续) 1 平行投影-正交平行投影(orthographic P. P.)  正投影的投影面与某一坐标轴垂直,而投影方向与该坐标轴的方向一致。 正投影的图形,在长宽高三个方向上的比例与实物保持一 致,因此,常用于工程制图。 z 主视图 侧视图 y 俯视图 x

  33. 3.1 图形的几何变换 3.2.3 投影变换(续) 2 平行投影-斜交平行投影(oblique P. P.) 投影线与投影平面成交角 正投影与斜投影

  34. 3.1 图形的几何变换 3.2.3 投影变换(续) 3 透视投影变换 • 投影中心与投影平面之间的距离为有限 • 参数:投影方向 • 例子:室内白炽灯的投影,视觉系统 • 灭点:不平行于投影平面的平行线,经过透视投影之后收敛于一点,称为灭点. • 主灭点:平行于坐标轴的平行线的灭点。 • 一点透视 • 两点透视 • 三点透视 • 特点:产生近大远小的视觉效果,由它产生的图形深度感强,看起来更加真实。

  35. 3.1 图形的几何变换 3.2.3 投影变换(续) 3 透视投影变换

  36. 3.1 图形的几何变换 3.2.3 投影变换(续) 3 透视投影变换 设投影中心在坐标原点,投影面与 Z 轴垂直,在 z = d 的 位置。点 P( x, y, z )在投影面上的投影为 P' ( xp, yp, d )。 xp x yp y d z d z x z y z y ∵ = = , o P' P(x,y,z) xp = ·d x d z ∴ yp = ·d y d P z o P' P' P z o

  37. 3.3 图元输出与输出属性 3.3.1 二维图元输出 用户定义的二维图元的窗口区到视图区的输出过程如下所示: 应用程序得到的坐标(UC)对窗口区进行裁剪(WC) 窗口区到视图区的规格化变换(NDC) 视图区的规格化坐标系到设备坐标系的变换(DC) 调用基本图元生成算法在图形设备上输出图形

  38. 3.3 图元输出与输出属性 3.3.2 输出属性及其控制 ⒈图元的输出属性 ⒉属性的组合控制

  39. 3.3 图元输出与输出属性 3.3.3 三维图元的输出 ⒈定义一个视域坐标系统VCS,为此需指定如下数据: ⑴VCS坐标原点,也称View reference point。 ⑵VCS的z轴方向,也称view plane normal。 ⑶VCS的y轴方向,又称view up vector。

  40. z y WCS y z x x VCS o ⒉将投影物体从世界坐标变换为视域坐标。

  41. ⒊选择平行投影或透视投影进行投影变换。使得VCS的三维对象变为VCS中在yOx平面中的二维对象。⒊选择平行投影或透视投影进行投影变换。使得VCS的三维对象变为VCS中在yOx平面中的二维对象。 ⒋在VCS的yOx平面中取一个窗口,并定义相应的视区,进行标准化变换。

More Related