第3章 产品数字化开发技术基础_第1页
第3章 产品数字化开发技术基础_第2页
第3章 产品数字化开发技术基础_第3页
第3章 产品数字化开发技术基础_第4页
第3章 产品数字化开发技术基础_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

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

文档简介

计算机图形学基础

本章要领:3.1概述

3.1.1计算机图形学的研究内容

3.1.2坐标系统

3.1.3窗口与视口3.2图形变换

3.2.1图形变换的数学基础

3.2.2二维图形的几何变换3.3图形裁剪

3.3.1线段的裁剪

3.3.2Cohen-Sutherland线段裁剪算法2026/6/291SuChun,SoutheastUniversity计算机图形学基础3.4曲线及曲面的表示

3.4.1曲线和曲面的基本概念

3.4.2曲线和曲面的参数化方程

3.4.3参数曲线的代数形式和几何形式

3.4.4参数化曲线

3.4.5参数化曲面3.5图形显示的渲染技术

3.5.1消除隐藏线及隐藏面

3.5.2光照模型

3.5.3纹理处理

3.5.4颜色处理2026/6/292SuChun,SoutheastUniversity

计算机图形学概述

计算机图形学的研究内容计算机图形学(ComputerGraphics,CG)是研究如何利用计算机生成、存储、处理、显示和管理图形的一门学科。计算机处理的图形不仅包括由绘图工具绘制的产品、工程的模型和图样,还包括客观世界中的景物、照片、图片、绘画及雕塑等。

这两种图形在计算机内部的描述方法并不相同。前者为矢量图形,后者为点阵图形。2026/6/293SuChun,SoutheastUniversity

计算机图形学概述矢量图形是由计算机记录图形的形状参数、颜色、线型等属性而形成的图形。点阵图形则是用点阵的充填来表示图形,构成图形的点都具有一定的灰度和色彩。通常,将点阵图形称为图像,而将矢量图形简称为图形。计算机图形学主要是指对矢量图形的处理。2026/6/294SuChun,SoutheastUniversity

计算机图形学概述绘图是工业产品设计和生产中重要的技术手段之一。传统的手工绘图效率低、精度差,图形只能以纸张方式存在,不便于管理、检索、修改和保存。在相似及相关设计时,相同部分难以直接利用,即使是稍有变动也需重新绘制全图。与手工绘图相比,计算机绘图出图速度快、作图精度高,还具有便于管理、检索、修改等优点。总体上,计算机绘图软件应具备以下基本功能:(1)图形输入功能(2)存储功能2026/6/295SuChun,SoutheastUniversity

计算机图形学概述(3)计算功能(4)显示和输出功能(5)对话功能2026/6/296SuChun,SoutheastUniversity

计算机图形学概述坐标系统

几何物体具有一定的形状、大小和位置,计算机中的几何元素定义及图形输入输出都是在一定的坐标系下进行的。为便于用户理解和提高图形处理的效率,计算机图形学中提供了不同的坐标系。根据维度可以分为:—维坐标系、二维坐标系、三维坐标系;根据坐标轴之间的空间关系可以分为直角坐标系、圆柱坐标系和球坐标系等。2026/6/297SuChun,SoutheastUniversity

计算机图形学概述其中,笛卡尔三维直角坐标系最常用。按照z轴方向的不同,笛卡尔坐标系分为右手坐标系和左手坐标系。①

右手坐标系:用右手握住z轴,大拇指指向z轴的正方向,其余四指从x轴转向y轴。②

左手坐标系:用左手握住z轴,大拇指指向z轴的正方向,其余四指同样从x轴转向y轴2026/6/298SuChun,SoutheastUniversity

计算机图形学概述三维直角坐标系的定义2026/6/299SuChun,SoutheastUniversity

计算机图形学概述2026/6/2910SuChun,SoutheastUniversity

计算机图形学概述图形系统中定义的坐标系2026/6/2911SuChun,SoutheastUniversity

计算机图形学概述也称全局坐标系(GlobalCoordinateSystem)或用户坐标系。它是右手三维直角坐标系,其原点位置任意,但坐标系方向不能改变。世界坐标系属于公共坐标系,是单个物体或某一场景中的所有图形对象定义和定位的统一参照系,用于定义用户整图或最高层图形结构。计算机图形系统中的其他坐标系都是参照世界坐标系进行定义。(1)世界坐标系(WorldCoordinateSystem,WC)2026/6/2912SuChun,SoutheastUniversity

计算机图形学概述也称为局部坐标系(LocalCoordinateSystem)或主坐标系(MasterCoordinateSystem)。它是为方便构造单个对象而定义的坐标系,属于右手三维直角坐标系。它独立于世界坐标系,其原点位置和坐标系方向可根据用户需要自由定义。为方便形体和图素的定义,每一个形体和图素都可以建立各自独立的建模坐标系。通过指定建模坐标系在世界坐标系中的位置,可以将属于局部的物体放入世界坐标系内。(2)建模坐标系(ModelingCoordinateSystem,MC)2026/6/2913SuChun,SoutheastUniversity

计算机图形学概述左手三维直角坐标系,用于从观察者的角度对世界坐标系内的物体进行重新定位和描述。(3)观察坐标系(ViewingCoordinateSystems,VC)

观察坐标系主要有两个用途:①用于指定裁剪空间,确定形体的哪一部分要显示输出;②通过定义观察(投影)平面,把三维形体的世界坐标变换

成规格化的设备坐标。2026/6/2914SuChun,SoutheastUniversity

计算机图形学概述二维坐标系,它定义在成像平面上。成像坐标系定义了物体在成像面上的投影点,成像面通过指定成像面与视点之间的距离Vd来定义。(4)成像坐标系(ImagingCoordinateSystems,IC)2026/6/2915SuChun,SoutheastUniversity

计算机图形学概述左手三维直角坐标系,用来定义视图区,范围从0到1,使图形系统独立于可能使用的各种设备,同时又可转变成不同设备的坐标系。它是一个中间坐标系,以利于提高应用程序的可移值性。使用图形软件的用户均以规格化设备坐标系在各图形输出设备上作图。从规格化设备坐标系到各图形输出设备的坐标系之间的映射由绘图软件自动实现。(5)规格化设备坐标系(NormalizingDeviceCoordinate

System,NDC)2026/6/2916SuChun,SoutheastUniversity

计算机图形学概述也称屏幕坐标系(ScreenCoordinateSystem)。它是图形输出设备所使用的坐标系,一般采用左手三维直角坐标系。通常,设备坐标系也是定义像素(pixel)或位图(bitmap)的坐标系。每个图形设备均有自己的设备坐标系。对于具体的显示设备,在定义成像窗口的情况下,可进一步在设备坐标系中定义视口,视口中的成像即为实际所观察到的图像。(6)设备坐标系(DeviceCoordinateSystem,DC)2026/6/2917SuChun,SoutheastUniversity

计算机图形学概述常用坐标系的转换关系计算机图形的生成过程涉及多个坐标系之间的转换。用户利用各种输入设备进行交互绘图的基本操作步骤如下:①

在局部坐标系中建立物体的几何模型;②

将单个物体进行组装,形成世界坐标系中的全局模型;③

确定观察点位置,设定观察坐标系的位置;④

确定显示范围,选择对象的可见区域;⑤

确定图形显示设备上的视区。2026/6/2918SuChun,SoutheastUniversity图形变换图形变换是计算机绘图的基础内容之一。通过图形变换,可以由简单图形生成复杂图形,可以用二维图形来表示三维形体,也可以通过快速变换利用静态图形获得动态效果。坐标系转换的过程也属于图形变换。图形变换既可以视为图形不动而坐标系变动,图形在新坐标系获得新坐标值的过程;也可以视为坐标系不动而图形变动变动后的图形在坐标系中的坐标值发生变化的过程。两者的本质相同。2026/6/2919SuChun,SoutheastUniversity图形变换窗口与视口窗口是用户在对象图形上选定的局部观察区域,以便更清晰地观察该部分的图形。1.窗口(window)窗口类似于照相机的取景器,通过窗口只能见到包含在窗口以内的图形部分,窗口以外的部分不可见。但是,不可见的部分却并不因为不可见而不存在。2026/6/2920SuChun,SoutheastUniversity图形变换在图形设备上,用来复制窗口内容的矩形区域称为视口。视口与物理设备密切相关。例如,显示器屏幕和绘图仪幅面是用来表现图形的二维平面,视口则是该二维平面中的有限区域。在同一物理设备上可以定义多个视口,视口还可以嵌套。利用视口可以从不同角度、以不同比例分别显示图形,以满足不同的应用需求。2.视口(viewport)2026/6/2921SuChun,SoutheastUniversity图形变换窗口与视口2026/6/2922SuChun,SoutheastUniversity图形变换窗口定义在世界坐标系中,视口定义在设备坐标系中,二者相互独立。多数情况下,窗口与视口的大小和单位都不相同,只有当所定义的视口大小与窗口大小相同,而且设备坐标的度量单位与世界坐标的度量单位也相同时,二者之间才为1:1的对应关系。为了把选定的窗口内容在的视口上表现出来,即将窗口内某一点W(xw,yw)画在视口的指定位置V(xv,yv)上,必须进行窗、视变换。3.窗口、视口变换2026/6/2923SuChun,SoutheastUniversity图形变换按照比例关系可以推导出窗口、视口变换的方程式:结论:①视口不变,窗口缩小或放大时,视口显示的图形会相应地放大或缩小;②窗口不变,视口缩小或放大时,视口中显示的图形将相应地缩小或放大;③视口的纵横比不等于窗口的纵横比时,视口中显示的图形将有伸缩变化;④窗口与视口大小相同、坐标原点也相同时,视口中显示的图形不变。2026/6/2924SuChun,SoutheastUniversity图形变换适当地选用窗口和视口,可以放大或缩小图形,显示图形特定的部分,以方便地观察复杂或细小的对象,进行直观交互式设计、编辑和修改。

窗口可以嵌套,即在第一层窗口中再定义第二层窗口,在第i层窗口中再定义第i+1层窗口等。窗口形状可以有各种样式,除矩形窗口外,还可以定义圆形窗口、多边形窗口等异形窗口。2026/6/2925SuChun,SoutheastUniversity图形变换图形变换的数学基础

以二维图形为例,二维点、直线和平面的规格化齐次坐标形式分别为:2026/6/2926SuChun,SoutheastUniversity图形变换二维图形的几何变换几何变换是对图形的几何信息经过变换后产生新的图形。几何变换可以描述成一个或几个几何变换的组合。二维几何变换是图形变换的最简单形式,也是构成复杂几何变换的基础。常见的二维几何变换包括平移、旋转和缩放等。二维几何变换矩阵为:

2026/6/2927SuChun,SoutheastUniversity图形变换根据变换功能,可以将矩阵T分为四个子矩阵,其中:为图形缩放、旋转、对称、错切等变换的相关矩阵;为图形平移变换相关的矩阵;为图形作投影变换的相关矩阵;对整体图形作伸缩变换。2026/6/2928SuChun,SoutheastUniversity图形变换常见的二维图形几何变换2026/6/2929SuChun,SoutheastUniversity图形变换(1)二维平移变换平移变换的矩阵运算为:2026/6/2930SuChun,SoutheastUniversity图形变换旋转变换是指图形绕原点在xy平面内旋转θ角的变换过程。一般地,逆时针方向为正方向。以坐标原点为旋转基准点的旋转变换的矩阵运算为:(2)二维旋转变换2026/6/2931SuChun,SoutheastUniversity图形变换二维缩放变换按比例改变图形的尺寸。多边形的缩放变换可通过将每个顶点的坐标值(x1,y1)乘以缩放系数Sx和Sy以产生变换的坐标(x2,y2)来实现,其中Sx为在x方向的缩放系数,Sy为y方向的缩放系数。缩放变换的矩阵运算为:(3)二维缩放变换2026/6/2932SuChun,SoutheastUniversity图形变换对称变换图形的大小形状均不改变,位置上形成一定特殊的相对关系。对称变换的矩阵运算为:(4)二维对称变换当变换因子取不同值时,可形成不同的对称形式。二维对称变换的主要形式如下:2026/6/2933SuChun,SoutheastUniversity图形变换对称变换的常见形式2026/6/2934SuChun,SoutheastUniversity图形变换在基本几何变换中,旋转和缩放功能都是按相对于坐标原点进行的变换,而相对于其他参考点的旋转和缩放,则需要一组顺序的变换操作。在实际应用中,一个图形可能要经过多次基本变换(如平移、旋转和缩放),才能满足建模要求,称之为复合变换。复合变换就是指对图形作一次以上的基本几何变换的组合。利用齐次坐标矩阵,可以将任意顺序的变换矩阵依次相乘,形成变换矩阵的乘积,再与原始坐标相乘,从而获得变换的最终坐标值。2026/6/2935SuChun,SoutheastUniversity图形裁剪裁剪是指以窗口为边界,将图形分为可见区域和不可见区域,仅保留窗口内的可见部分,去掉窗口外的不可见部分,并按一定比例将可见部分输出到图形输出设备上。用来裁剪对象的区域称为裁剪窗口,裁剪窗口可以是矩形、多边形或含有曲线的边界等。直线段的裁剪2026/6/2936SuChun,SoutheastUniversity图形裁剪利用裁剪技术,可以将窗口内的图形信息和窗口外的图形信息分割开来。裁剪的应用包括:从场景中抽取部分观察对象;从三维视图中标识出可见面;防止线段或对象的边界混淆;创建多窗口工作环境;框选部分图形以进行拷贝、移动或删除操作等。

裁剪可以分为二维裁剪和三维裁剪两种类型。三维裁剪窗口是空间区域。2026/6/2937SuChun,SoutheastUniversity图形裁剪裁剪可用于各种类型的图形元素,如点、线、字符以及多边形等。裁剪的本质是对线段、字符、多边形等图素作求交与剪裁,并保留需要的部分。直线段是组成复杂图形的基础,直线段的裁剪算法对其他图形元素的裁剪具有普遍意义。裁剪算法就是要找出落在窗口内线段的起点和终点坐标。线段的裁剪2026/6/2938SuChun,SoutheastUniversity图形裁剪假定xwmin、xwmax、ywmin、ywmax为裁剪窗口的4条边线位置,则判定点(x,y)是否位于裁剪窗口内的依据为:2026/6/2939SuChun,SoutheastUniversity图形裁剪(1)直线段完全在窗口之内,如线段a;(2)直线段完全在窗口边框之外,如线段b;(3)直线段和窗口的一条边框相交,该直线段一段落在窗口之内,一段落在窗口之外,如线段c;(4)直线段贯穿窗口,与窗口的两条边框相交,使原直线段被分成3段,其中有一段落在窗口内,另外两段在窗口外,如线段d和e。对于任意一条直线段,它与窗口之间可能存在以下四种位置关系:2026/6/2940SuChun,SoutheastUniversity图形裁剪Cohen-Sutherland线段裁剪算法:Cohen-Sutherland算法也称编码算法。该算法用四位二进制区域编码来描述点与窗口之间的位置关系。自左向右,四位编码分别代表点的位置与窗口边界的上、下、右、左关系2026/6/2941SuChun,SoutheastUniversity图形裁剪如果点完全在窗口内,则区域码为0000;否则,相应位区域码为1。显然,如果某线段的两个端点的区域码4位均是0,那么该线段就完全位于窗口内;如果线段的两个端点区域码同一位置都为1,线段完全落在窗口之外。通过比较线段端点的坐标值(x,y)与裁剪窗口的边界,可以生成区域码。例如:若x<xwmin,则区域码第四位为1,否则为0;若x>xwmax,则区域码第三位为1,否则为0。其他码位的确定依此类推。2026/6/2942SuChun,SoutheastUniversity曲线及曲面的表示曲线和曲面是计算机图形学的重要研究内容。现代汽车、飞机、家电、船舶等产品的设计都要用到复杂的曲线和曲面,以实现产品外形设计的美观和物理性能的优化。新产品研发也不断对曲线、曲面提出新的要求。曲线和曲面的基本概念按照描述方式的不同,曲线和曲面可以分为两类:(1)规则曲线和曲面:圆、抛物线、螺旋线等曲线和球、圆柱、圆锥等曲面都可以用数学方程式表示,一般称为规则曲线和规则曲面。2026/6/2943SuChun,SoutheastUniversity曲线及曲面的表示(2)自由曲线和曲面有些曲线和曲面的形状不规则,如飞机机翼、汽车车身、人体外形、卡通形象等,难以用数学方程式表示,一般称为自由曲线和自由曲面。2026/6/2944SuChun,SoutheastUniversity曲线及曲面的表示(3)插值点:为提高曲线和曲面的输出精度,在型值点之间插入的一系列点。当用离散的坐标点来描述物体形状时,要求用最贴近这些点的函数式来描述。根据离散点与曲线(曲面)的相对关系,可以将离散点分为三种类型:(1)控制点:用来确定曲线和曲面的位置与形状,但相应曲线和曲面不一定经过该点。(2)型值点:用来确定曲线和曲面的位置与形状,相应曲线和曲面一定要经过该点。2026/6/2945SuChun,SoutheastUniversity曲线及曲面的表示(1)逼近(approach)在曲线、曲面的设计过程中,要根据应用需求得到最贴近上述点的函数描述。常用术语:(2)插值(interpolation)(3)光顺(fairness)(4)拟合(fitting)(5)光滑(smoothness)2026/6/2946SuChun,SoutheastUniversity曲线及曲面的表示曲线和曲面的参数化方程

根据应用对象、场合和目的不同,曲线和曲面方程有参数和非参数两种表示方法,而非参数表示又可以分为显式表示和隐式表示。一条曲线上的点,各坐标变量之间存在一定关系。如果这种关系能以方程来描述,就得到该曲线的方程。例如:二维空间中,直线的方程为y=kx+b,圆的方程为x2+y2=r2。如果曲线上各点的坐标变量之间关系简单,一个坐标能够用另一个坐标变量直接地表示出来,那么即可得到曲线的显式表示。1.非参数表示2026/6/2947SuChun,SoutheastUniversity曲线及曲面的表示显式方程不能表示多值曲线。即给定一个x值,只能得到一个y值和一个z值,而不能对应多个y值或z值。隐式方程克服了上述缺陷。隐式方程中只规定了各坐标变量之间的关系,而不要求变量之间必须是一对一的,或是多对一的。例如:圆的方程x2+y2=r2中,一个x可以对应两个y,一个y也可以对应两个x,只需满足x2+y2等于定值r2,该点就在圆上。因此,该方程是圆的隐式表示。2026/6/2948SuChun,SoutheastUniversity曲线及曲面的表示2.参数表示参数是指曲线方程中使用的自变量,当它在某个范围内改变时,对应坐标点在曲线上移动。参数曲线和曲面是指用参数作为自变量的函数曲线和曲面。设参数为t,则三维空间曲线的参数方程一般形式是:2026/6/2949SuChun,SoutheastUniversity曲线及曲面的表示2026/6/2950SuChun,SoutheastUniversity曲线及曲面的表示简单曲线的参数表示与隐式表示之间可以相互转化。一般地,将隐式方程转化为参数方程称为参数化;将参数方程转化为隐式方程称为隐式化。曲线和曲面的参数方程具有很多优点,主要有:①与坐标系无关。用参数方程描述的自由曲线和曲面与坐标系的选取无关。②参数方程对变量个数不限,便于用户将低维空间中的曲线、曲面扩展到高维空间。③参数化方程可以更自由地控制曲线、曲面的形状。2026/6/2951SuChun,SoutheastUniversity曲线及曲面的表示2026/6/2952SuChun,SoutheastUniversity曲线及曲面的表示2026/6/2953SuChun,SoutheastUniversity曲线及曲面的表示2026/6/2954SuChun,SoutheastUniversity曲线及曲面的表示2026/6/2955SuChun,SoutheastUniversity曲线及曲面的表示参数化曲线1.Bezier曲线2.B样条曲线3.非均匀有理B样条(NURBS曲线)2026/6/2956SuChun,SoutheastUniversity曲线及曲面的表示参数化曲面片的表达方法与参数化曲线相似,可以由两个方向的特征多边形来决定。两个方向的特征多边形构成特征网格,特征多边形的顶点就是特征网格的顶点。1.Bezier曲面2.B样条曲面

3.NURBS曲面2026/6/2957SuChun,SoutheastUniversity图形显示的渲染技术消除隐藏线及隐藏面线框图形的二义性2026/6/2958SuChun,SoutheastUniversity图形显示的渲染技术线框模型中,用边界线表示有界平面、用边界线及若干参数曲线表示参数曲面,即待显示的所有实体均为线。线对线没有遮挡关系,只有面或体才有可能对线形成遮挡。因此,消隐算法要求造型系统中有面的信息,甚至有体的信息。消隐的最基本运算为:判断面对线的遮挡关系,反复地进行线线、线面之间的求交运算。对于体,也要先分解为面,再判断面与线的遮挡关系。2026/6/2959SuChun,SoutheastUniversity图形显示的渲染技术1.消除隐藏线——直线段的遮挡判断2026/6/2960SuChun,SoutheastUniversity图形显示的渲染技术2.消除隐藏面——画家算法画家算法的实现步骤2026/6/2961SuChun,SoutheastUniversity图形显示的渲染技术多边形交叉和重叠的情况2026/6/2962SuChun,SoutheastUniversity图形显示的渲染技术光照模型

光照模型(illuminationmodel)是指在计算机中模拟光照射到物体表面产生的反射或投射现象的渲染方法。当光照射到物体表面时,可能会被吸收、反射、折射或透射。视觉系统正是通过那些被反射、折射或透射的光线看见物体。客观世界中,一般存在多个光源,光线在物体间经过多次反射、折射后,照射在物体上。根据物体表面性质的不同呈现出不同的色彩、亮度及质感。2026/6/2963SuChun,SoutheastUniversity图形显示的渲染技术要在屏幕上输出逼真的图形,就需要综合考虑上述因素,建立光照模型,用它模拟光在物体间传递并到达观察者眼中形成视觉成像的复杂过程。

温馨提示

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

评论

0/150

提交评论