《计算机图形学》PPT课件.ppt_第1页
《计算机图形学》PPT课件.ppt_第2页
《计算机图形学》PPT课件.ppt_第3页
《计算机图形学》PPT课件.ppt_第4页
《计算机图形学》PPT课件.ppt_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第五章 二维变换和裁剪,二维图形的观察 二维图形的裁剪 几何变换,2020/8/29,计算机科学与技术学院,2,二维图形观察,基本概念 坐标系 二维图形的显示流程 规格化变换和设备坐标转换,2020/8/29,计算机科学与技术学院,3,基本概念,用户域和窗口区 用户域:指程序员用来定义草图的整个自然空间(WD),也称为用户空间、用户坐标系。是连续的、无限的。 窗口区:指用户指定用户域中输出到屏幕上的任一区域(Window)。在计算机图形学中,是将在用户坐标系中需要进行观察和处理的一个坐标区域。窗口区W小于或等于用户域WD,任何小于WD的窗口区W都叫做WD的一个子域。目的是为了使规格化设备坐标系

2、(NDC)上所显示的世界坐标中物体有一个合适的范围与大小。,2020/8/29,计算机科学与技术学院,4,说明: 窗口区通常是矩形域,可以用其左下角点和右上角点坐标来表示。(也可给定左下角点坐标及其矩形的长、宽来表示)。 窗口可以嵌套,即在第i层窗口中可以再定义第i+1层窗口。,2020/8/29,计算机科学与技术学院,5,基本概念,屏幕域和视图区 屏幕域:是图形设备上输出 图形的最大区域,是有限的 整数域。如某图形显示器有 1024x1024个可编地址的光 点,也称像素,则屏幕域DC 可定义为:DC为 0:1023 x 0:1023 视图区(Viewport) :任何小于或等于屏幕域的区域。

3、视图区可由用户在屏幕域中用设备坐标来定义,2020/8/29,计算机科学与技术学院,6,说明: 视图区一般也定义成矩形区域; 视图区小于或等于屏幕域; 视图区由其左下角点坐标和右上角点坐标定义; 视图区可以嵌套,嵌套的层次由图形软件设定。,世界坐标系中要显示的区域称为窗口。窗口映射到显示器的区域称为视口。窗口定义了显示的内容,而视口定义在什么位置显示。,2020/8/29,计算机科学与技术学院,7,观察变换: 将窗口内的图形在视区中显示出来,必须经过将窗口到视区的变换(Window-Viewport Transformation)处理,这种变换就是观察变换(Viewing Transforma

4、tion)。,2020/8/29,计算机科学与技术学院,8,坐标系,坐标系:建立了图形与数之间的对应联系 坐标系形式:左手坐标系;右手坐标系 坐标系统分类 以其维度上看,可分为一维坐标系统、二维坐标系统、三维坐标系统 以其坐标轴之间的空间关系来看,可分为直角坐标系统、园柱坐标系统、球坐标系统等等,2020/8/29,计算机科学与技术学院,9,坐标系,园柱坐标系统与直角坐标系统的关系: xrcos yrsin zz 球坐标系统与直角坐标系统的关系: xrsincos yrsinsin zrcos 显示输出的坐标系统 世界坐标系(world coordinate Systems) 局部坐标系(Lo

5、cal Coordinate System) 观察坐标系(Viewing coordinate systems) 成像面坐标系统 屏幕坐标系统,也称设备坐标系统,2020/8/29,计算机科学与技术学院,10,用户坐标系中旋转的窗口,2020/8/29,计算机科学与技术学院,11,世界坐标系,简单称WC ,也称用户坐标系。理论上是连续的、无限的,定义域为实数域。 该坐标系统主要用于计算机图形场景中的所有图形对象的空间定位和定义,包括观察者的位置、视线等等。计算机图形系统中涉及的其它坐标系统都是参照它进行定义。,2020/8/29,计算机科学与技术学院,12,局部坐标系,主要为考察物体方便起见,

6、独立于世界坐标系来定义物体几何特性,通常是在不需要指定物体在世界坐标系中的方位的情况下,使用局部坐标系。 一旦定义“局部”物体,通过指定局部坐标系的原点在世界坐标系中的方位,然后通过几何变换,就可很容易地将“局部”物体放入世界坐标系内,使它由局部上升为全局。,2020/8/29,计算机科学与技术学院,13,观察坐标系,是依据窗口的方向和形状在用户坐标平面中定义的直角坐标系。 观察坐标系通常是以视点的位置为原点,通过用户指定的一个向上的观察向量(view up vector)来定义整个坐标系统,缺省为左手坐标系. 观察坐标系主要用于从观察者的角度对整个世界坐标系内的对象进行重新定位和描述,从而简

7、化几何物体在投影面的成像的数学推导和计算。,2020/8/29,计算机科学与技术学院,14,成像面坐标系统,它是一个二维坐标系统,主要用于指定物体在成像面上的所有点,往往是通过指定成像面与视点之间的距离来定义成像面,成像面有时也称投影面,可进一步在构影面上定义称为窗口的方形区域来实现部分成像。,2020/8/29,计算机科学与技术学院,15,屏幕坐标系统,简称DC,也称物理坐标系。不连续、有界的。定义域为整数域。 它主要用于某一特殊的计算机图形显示设备(如光栅显示器)的表面的点的定义,在多数情况下,对于每一个具体的显示设备,都有一个单独的坐标系统,在定义了成像窗口的情况下, 可进一步在屏幕坐标

8、系统中 定义称为视图区(view port) 的有界区域,视图区中的成 像即为实际所观察到的。,2020/8/29,计算机科学与技术学院,16,规格化设备坐标系(模型空间),也是直角坐标系,它是将二维的设备坐标系规格化到(0.0,0.0)到(1.0,1.0)的坐标范围内形成的。 采用一种无量纲的单位代替设备坐标,当输出图形时,再转换为具体的设备坐标。,2020/8/29,计算机科学与技术学院,17,二维图形的显示流程图,引入了观察坐标系和规格化设备坐标系后,观察变换分为如下图所示的几个步骤,通常称为二维观察流程。,2020/8/29,计算机科学与技术学院,18,变换过程,在用户坐标系中 定义图

9、形,通过变换影射到 屏幕域,消 隐 着 色 光 滑 处理等,在屏幕域中 产生投影,几何变换 与 标注,显示,绘图,定义窗口获取处理图形,2020/8/29,计算机科学与技术学院,19,2020/8/29,计算机科学与技术学院,20,变焦距效果,变焦距效果(窗口变,视区不变),2020/8/29,计算机科学与技术学院,21,整体放缩效果,整体放缩效果(窗口不变,视区变),用户坐标系到观察坐标系的变换,用户坐标系到观察坐标系的变换分为两个变换步骤合成: 将观察坐标系原点移动到用户坐标系原点,2020/8/29,计算机科学与技术学院,23,绕原点旋转使两坐标系重合,2020/8/29,计算机科学与技

10、术学院,24,窗口到视区的变换,矩形窗口: w(1)和w(2),w(3)和w(4), 矩形视区: iv(1)和iv(2),iv(3)和iv(4)。 设窗口点(x,y),对应视区点(ix,iy),1.变换公式,若av= cv=1,bv= dv=0 矩阵形式: av 0 0 ix iy 1 =x y 1 0 cv 0 bv dv 1,av,cv:反映视区和窗口在x、y方向的伸缩比; bv,dv:反映定位点在x 、y方向上的偏移量;,bv=iv(1)-avw(1) dv=iv(2)-cvw(2),ix=avx+bv iy=cvy+dv,2020/8/29,计算机科学与技术学院,26,窗口到视区的变换

11、,2020/8/29,计算机科学与技术学院,27,要将窗口内的点(xw,yw)映射到相对应的视区内的点(xv,yv)需进行以下步骤: (1) 将窗口左下角点移至用户系统系的坐标原点 (2) 针对原点进行比例变换 (3) 进行反平移,2020/8/29,计算机科学与技术学院,28,要将窗口内的点(xw,yw)映射到相对应的视区内的点(xv,yv)需进行以下步骤: (1) 将窗口左下角点移至用户系统系的坐标原点 (2) 针对原点进行旋转变换 (3) 针对原点进行比例变换 (4) 针对原点进行反旋转变换 (5) 进行反平移,2020/8/29,计算机科学与技术学院,29,规格化坐标(NDC)到设备坐

12、标(DC)的变换(工作站变换),对于大多数PC机,a1,Nx1024,Ny768,2020/8/29,计算机科学与技术学院,30,规格化坐标(NDC)到设备坐标(DC)的变换,在NDC中的点(xin,yin)经平移(dx, dy)和比例(sx,sy)变换后,就可得到DC中的点(xout, yout) xoutsxxindx youtsyyindy 若NDC中的两点xin1和xin2变换到DC下为xout1和xout2,由于点从NDC到DC的变换是线性变换,有sx(xout2xout1)/(xin2xin1);dxxout1sxxin1。则有下列变换公式 xDCsxxNDCdx yDCsyyND

13、Cdy,2020/8/29,计算机科学与技术学院,31,规格化坐标(NDC)到设备坐标(DC)的变换,对点从NDC到DC作变换隐含三个问题: 要考虑x、y方向上的实际象素数; NDC空间具有的几何一致性不一定在DC空间中成立(因DC中的象素不一定是正方形,在图中象素的高宽比是(x)/(y),对常用PC机的象素高宽比是768/1024); 在实际应用中NDC和DC的方向相反。,2020/8/29,计算机科学与技术学院,32,方向的考虑,在x方向,变成0,1变成Nx, sx(x)/2,dx(Nx)/2; 在y方向,a变成0,a变成Ny, sy(Ny)/(a),dy(y)/2; 一个例子: sx(1

14、024)511.5, dx511.5; sy(768)(a)383.5,dy383.5;,2020/8/29,计算机科学与技术学院,33,对DC中象素中心的变换,在NDC中的点变换到DC后应在相应位置的象素中心。 在x方向,变成0.5,1变成Nx0.5,sxx/2, dx(x)/2; 在y方向,a变成0.5,a变成Ny0.5,syy/2a,dy(Ny)/2。 结合实例 sx512,dx511.5;sy384,dy383.5。在DC空间应对坐标取整,则: 在x方向,变成0,1变成Nx, sxx/2,dxNx/2 在y方向,a变成0,变成Ny, syy/2a,dyNy /2。 结合实例,sx512,dx512,sy384,dy384。,2020/8/29,计算机科学与技术学院,34,超出屏幕边界处理办法,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论