第8章图形变换 在计算机图形系统中,经常需要对基本图形进 行变换,例如:平移、旋转、放缩、对称和投 影等。一幅基本的图形包含两组信息,一组是 图形的几何信息,如图形的顶点坐标,另一组 是图形的拓扑信息,即图形各顶点之间的关系 图形的几何变换是指图形的几何信息发生改变 而拓扑关系不变。所以,图形的几何变换只考 虑图形各顶点坐标的变换。图形变换分为两种 种是图形不变,而坐标系发生变化,另一种 是坐标系不变,而图形位置和形状发生变化。 后一种情况是本章讲解的重点,分为二维图形 几何变换、三维几何变换和投影变换等
第8章 图形变换 ◼ 在计算机图形系统中,经常需要对基本图形进 行变换,例如:平移、旋转、放缩、对称和投 影等。一幅基本的图形包含两组信息,一组是 图形的几何信息,如图形的顶点坐标,另一组 是图形的拓扑信息,即图形各顶点之间的关系。 图形的几何变换是指图形的几何信息发生改变, 而拓扑关系不变。所以,图形的几何变换只考 虑图形各顶点坐标的变换。图形变换分为两种, 一种是图形不变,而坐标系发生变化,另一种 是坐标系不变,而图形位置和形状发生变化。 后一种情况是本章讲解的重点,分为二维图形 几何变换、三维几何变换和投影变换等
8.1坐标系和坐标变换 8.1.1坐标系 对图形对象的描述、图形的输入输出, 都是在一定的坐标系中进行的。常用的 坐标系分为用户坐标系、设备坐标系和 规格化的坐标系三种。不同的坐标系有 不同的坐标原点和坐标刻度,其取值范 围及适用的对象也有所不同
8.1 坐标系和坐标变换 ◼ 8.1.1 坐标系 ◼ 对图形对象的描述、图形的输入输出, 都是在一定的坐标系中进行的。常用的 坐标系分为用户坐标系、设备坐标系和 规格化的坐标系三种。不同的坐标系有 不同的坐标原点和坐标刻度,其取值范 围及适用的对象也有所不同
2爱裂 在几何学中,为了用数字描述空间的物 体,包括物体的大小、形状和位置,必 须引进笛卡尔坐标系。用户总是习惯于 在自己熟悉的坐标系中描述客体或绘制 图形,这个用户定义客体的坐标系,称 为用户坐标系,或称为客体坐标系。常 用的用户坐标系有直角坐标系、极坐标 系、对数坐标系、球形坐标系等。在图 形系统中,一般只用到直角坐标系。直 角坐标系又称为宇宙坐标系,可以分为 二维直角坐标系合三维直角坐标系
◼ 在几何学中,为了用数字描述空间的物 体,包括物体的大小、形状和位置,必 须引进笛卡尔坐标系。用户总是习惯于 在自己熟悉的坐标系中描述客体或绘制 图形,这个用户定义客体的坐标系,称 为用户坐标系,或称为客体坐标系。常 用的用户坐标系有直角坐标系、极坐标 系、对数坐标系、球形坐标系等。在图 形系统中,一般只用到直角坐标系。直 角坐标系又称为宇宙坐标系,可以分为 二维直角坐标系合三维直角坐标系
2爱裂 设备坐标系一般是二维坐标系,图形的输出在 设备坐标系中进行。设备坐标系包括有:绘图 仪坐标系和显示屏幕坐标系 规格化坐标系是与设备无关的坐标系,用来构 造与设备无关的图形系统。通常取无量纲的单 位长度作为在规格化坐标系中图形输入输出的 有效空间,x和y方向的取值范围为[0,1]
◼ 设备坐标系一般是二维坐标系,图形的输出在 设备坐标系中进行。设备坐标系包括有:绘图 仪坐标系和显示屏幕坐标系。 ◼ 规格化坐标系是与设备无关的坐标系,用来构 造与设备无关的图形系统。通常取无量纲的单 位长度作为在规格化坐标系中图形输入输出的 有效空间,x和y方向的取值范围为[0,1]
者之间的关系如图8.1所示。 0xnY)规格化变换 0(n,Y, 或者 (Xw Ybw) W 用户坐标系 规格化坐标系 设备坐标系 图8.1三种坐标系之间的关系
用户坐标系、规格化坐标系和设备坐标系 三者之间的关系如图8.1所示。 ◼ 图8.1 三种坐标系之间的关系 Y Y Y Y X X X X (Xw, Yw ) Hw (Xlw, Ybw) Ww 1 1 (Xn , Yn ) 用户坐标系 规格化坐标系 设备坐标系 规格化变换 或者 (0,0)
8.1.2窗口与视口 1.用户域和窗口 用户用来定义设计对象的实数域称为用 户域,也称为用户空间。人们所要描述 的图形均在用户域中进行定义。从理论 上说,用户域是连续的、无限的
8.1.2 窗口与视口 ◼ 1.用户域和窗口 ◼ 用户用来定义设计对象的实数域称为用 户域,也称为用户空间。人们所要描述 的图形均在用户域中进行定义。从理论 上说,用户域是连续的、无限的
用户域中定义的对象可能很大、很复杂, 用户可以指定其中感兴趣部分区域通过 屏幕显示出来,通常称这个区域为窗口。 就像人们站在房间里通过窗口往外看, 只能看到窗口范围内的景物,人们选择 不同的窗口可以看到不同的景物。窗口 区一般是矩形区域,可以用其左下角和 右上角的坐标来表示。窗口可以嵌套, 即在第一层窗口中可以再定义第二层窗 口。在某些情况下,还可以定义圆形窗 口或多边形窗口
◼ 用户域中定义的对象可能很大、很复杂, 用户可以指定其中感兴趣部分区域通过 屏幕显示出来,通常称这个区域为窗口。 就像人们站在房间里通过窗口往外看, 只能看到窗口范围内的景物,人们选择 不同的窗口可以看到不同的景物。窗口 区一般是矩形区域,可以用其左下角和 右上角的坐标来表示。窗口可以嵌套, 即在第一层窗口中可以再定义第二层窗 口。在某些情况下,还可以定义圆形窗 口或多边形窗口
2.屏幕域和视图区 ■图形设备上用来输出图形的最大区域称为屏幕 域,即显示器的显示区域,它是有限的整数域 用显示器分辨率来表示,如640×480 1024X768等。 在计算机屏幕上,一般的图形系统常常包含菜 单区、工具栏、图形显示区、信息提示区等, 图形只是在图形显示区显示,而不是在整个屏 幕上显示。我们把任何小于或等于屏幕域的区 域称为视图区。视图区由用户在屏幕域中用设 备坐标定义,一般定义为矩形,由其左下角坐 标和右上角坐标来定义。在一个计算机屏幕上, 可以定义多个视图区,分别显示不同的图形
2.屏幕域和视图区 ◼ 图形设备上用来输出图形的最大区域称为屏幕 域,即显示器的显示区域,它是有限的整数域, 用 显 示 器 分 辨 率 来 表 示 , 如 640 X480、 1024X768等。 ◼ 在计算机屏幕上,一般的图形系统常常包含菜 单区、工具栏、图形显示区、信息提示区等, 图形只是在图形显示区显示,而不是在整个屏 幕上显示。我们把任何小于或等于屏幕域的区 域称为视图区。视图区由用户在屏幕域中用设 备坐标定义,一般定义为矩形,由其左下角坐 标和右上角坐标来定义。在一个计算机屏幕上, 可以定义多个视图区,分别显示不同的图形
8.1.3坐标变换 由于窗口是在用户域中定义的,而视图定 义在计算机屏幕上,如果要将用户域中窗 口内的景物在计算机屏幕的视图中显示出 来,就必须求出图形在窗口区和视图区之 间的转换关系,这就是窗口与视图之间的 坐标变换 右上角坐标为(WW。在计算机屏 幕上定义的视图区的左下角坐标为 (Vx1,vyg),右上角坐标为(Vxr)
8.1.3 坐标变换 ◼ 由于窗口是在用户域中定义的,而视图定 义在计算机屏幕上,如果要将用户域中窗 口内的景物在计算机屏幕的视图中显示出 来,就必须求出图形在窗口区和视图区之 间的转换关系,这就是窗口与视图之间的 坐标变换。 ◼ 设矩形窗口的左下角坐标为(WXL,WYB), 右上角坐标为(WXR,WYT)。在计算机屏 幕上定义的视图区的左下角坐标为 (VXL,VYB),右上角坐标为(VXR,VYT)
额产强 沿图艺所尔,则在内的 美差 WW 与视图区中的对应的一点(X,Y)存在如下 的转换关系: y↑W(WxWm)y y↑v(vry 4;w (WEL, WyB) (EL, VyB) (a) (b) 图8-1窗口区与视图区的对应关系
如图8-2所示,则在窗口区内的一点(Xw ,Yw) 与视图区中的对应的一点(XV ,YV)存在如下 的转换关系: 图8-1 窗口区与视图区的对应关系