搜档网
当前位置:搜档网 › 计算机图形学复习大纲

计算机图形学复习大纲

计算机图形学复习大纲
计算机图形学复习大纲

计算机图形学复习大纲

第一章计算机图形学概述

?图形的两种表示方法:矢量,点阵

A.点阵表示:枚举出图形中所有的点的灰度或颜色(强调图形由点构成),简称为图像(数

字图像)

B.参数表示:由图形的形状参数(方程或分析表达式的系数,线段的端点坐标等)+属性参

数(颜色、线型等)来表示图形,简称为图形。

C.图形:计算机图形学的研究对象。

?计算机图形学的姐妹学科(图)

计算几何:研究几何形体在计算机中的表示;分析、研究怎样建立几何形体的数学模型;研究曲线、曲面的表示、生成、拼接。

图像处理:研究如何对数字图像做各种变换以方便处理;如何滤波;如何压缩图像数据;图像边缘提取,特征增强。

计算机视觉:图形学的逆过程,分析和识别输入的图像并从中提取二维或三维的数据模型(特征)。如手写体识别、机器视觉。

发展特点:交叉、界线模糊、相互渗透

?发展历史

开创者:1963年,MIT林肯实验室的Ivan Sutherland发表了题为“Sketchpad:一个人机交互通信的图形系统”的博士论文,提出了基本交互技术、图元分层表示概念及数据结构。确定了交互图形学作为一个学科分支的地位。Sutherland本人也被公认为图形学之父。1988年被授予图灵奖。

图形标准:ACM成立图形标准化委员会,制定“核心图形系统”(Core Graphics System);ISO 发布CGI、CGM、GKS、PHIGS等标准。

官方标准:GKS (Graphics Kernel System),第一个官方标准,1977;PHIGS(Programmer’s Herarchical Interactive Graphics system),1988。

非官方标准:DirectX (MS)、OpenGL(SGI)、Xlib(X-Window系统)、Adobe公司Postscript。

?应用领域

计算机辅助设计与制造(CAD/CAM);飞机、汽车、船舶的外形的设计;发电厂、化工厂等的布局;土木工程、建筑物的设计;电子线路、电子器件的设计。

?输入输出设备

A.输入设备:控制开关、穿孔纸;键盘;二维定位设备,如鼠标、光笔、图形输入板、触

摸屏;三维输入设备(如空间球、数据手套、数据衣),用户的手势、语音表情等等;

用户的思维。

B.输出设备:彩色CRT显示器、平面显示器、LCD显示器。

?帧缓存(P12)

帧缓冲器是数字设备,光栅扫描显示器是模拟设备。

A.帧缓存的作用:光栅扫描显示器使用帧缓冲器存储屏幕每个像素点的颜色信息,帧缓冲

器用位面和屏幕像素一一对应。

B.大小计算:

如屏幕分辨率为1024*768,则黑白显示器的帧缓冲容量是1024*768*1=786432b。

第二章二维线画图元生成

?直线段的生成算法:

A.DDA算法:上课PPT P9~14

B.中点算法:思路,判别式,计算。上课PPT P15~23

判别式:d=F(M)=F(Xp+1,Yp+0.5)

C.Bresenham算法:思路,判别式,计算。上课PPT P24~31

?圆的生成算法

中点算法:思路,判别式,计算,对称性。上课PPT P42

正负法:思路,适用范围

圆弧的隐函数:F(X,Y)=X2+Y2-R2=0

圆弧外的点:F(X,Y)>0

圆弧内的点:F(X,Y)<0

属性控制:

A.线宽:三种方法,刷子画线的特征

像素复制方法(线刷子)

斜率在(-1,1)之间用垂直刷子,否则用水平刷子。

优点:实现简单,效率高

缺点:1 线段两端要么为水平的,要么是竖直的;

2 折线顶点处有缺口;

3 图元的宽度不均匀;

4 产生宽度为偶数像素的图元效果不好;

移动刷子

把宽度为指定线宽的刷子的中心沿直线移动,获得相应宽图元。

优点:

实现简单

通过改变刷子形状可以不同的线宽效果

缺点:

重复写象素,但可以通过改进算法避免

方形刷子也有宽度不均问题

利用填充图元

要产生宽度为k的图元,可以首先计算出距离原始的理想图元k/2的两条等距线,将其连接起来并填充。

优点:

生成的图形质量高

缺点:

计算量大

有些图形的等距线难以获得(如椭圆)

B.线型:位屏蔽器

一般用位屏蔽器实现,如:用一个16位整数表示一个位串,当对应为1时,显示像素,否则不显示。

以16个像素为周期重复,在程序实现时将无条件写像素Putpixel(x,y,color)改为有条件:if(位串[i%16]) Putpixel(x,y,color);其中i为整型计数器,指示当前像素的序号。

?作业一

第三章二维填充图元

?扫描转换多边形含义:多边形矢量→象素

?扫描转换矩形/逐点判断法/扫描转换扇形不考

?扫描线算法上课PPT P15~23

A.原理:一条扫描线与多边形的边有偶数个交点

B.步骤:一般用水平扫描,对于每一条扫描线:

?求交:计算扫描线与多边形各边的交点;

?排序:把所有交点按x值递增顺序排序;

?配对:第一个与第二个,第三个与第四个等等;每对交点代表扫描线与多边形的一

个相交区间。

?填色:把相交区间内的象素置成多边形颜色,把相交区间外的象素置成背景色

C.边结构:

各参数含义如下:

ymax: 边的上端点y坐标;

x:初值为边下端点的x坐标,AEL中为当前扫描线与边的交点的X坐标;

deltax:边的斜率的倒数;

nextEdge:指向下一条边的指针。

D.ET边的分类表:

按照边的下端点y坐标对非水平边进行分类的指针数组,下端点y坐标值等于i的边属于第i类。同一类中的边按x值(x相等的按deltax排)递增顺序排列。

E.AEL

我们把与当前扫描线相交的边称为活性边,并把它们按与扫描线交点x坐标递增的顺序存放在一个链表中,称此链表为活性边表(AEL)。

?边缘填充算法上课PPT P24-25上课PPT P26-28

A.算法1(以扫描线为中心的边缘填充算法)

B.算法2(以边为中心的边缘填充算法)

?作业二

?区域填充上课PPT P37~38

四连通:两个像素点是上下或左右相连的,则称其为4连通的。

八连通:两个像素点是上下或左右相连的,或者是对角线方向相连的,则称其为8连通的。

四连通八连通区域的特点:8连通的要求比4连通高。4连通也可看作8连通区域,但它作为4连通区域时,边界只要是8连通的就可以了;而作为8连通区域时,边界必须是4连通。种子填充算法原理:上课PPT P39~41

?以图像填充区域不考

?字符的表示与输出

两种表示方法:点阵字符、矢量字符。

点阵字符

每个字符由一个位图表示,并把它用一个称为字符掩膜的矩阵来表示

点阵字符的显示分为两步:首先从字库中将它的位图检索出来,然后将检索到的位图写到帧缓冲器中。

矢量字符

矢量字符记录字符的笔画信息而不是整个位图,具有存储空间小,美观、变换方便等优点。对于字符的旋转、放大、缩小等几何变换,而矢量字符则只需要对其几何图素进行变换就可以了。

矢量字符的显示也分为两步。首先从字库中将它的字符信息,然后取出端点坐标,对其进行适当的几何变换,再显示字符。

特点:

点阵字符:字库的存储空间十分庞大。(为了减少存储空间,一般采用压缩技术。)

矢量字符:压缩比大,且能保证字符质量。

第四章混淆和反混淆

?混淆和反混淆上课PPT P12~17

混淆定义:在光栅显示器上显示图形时,直线段或图形边界或多或少会呈锯齿状。原因是图形信号是连续的,而在光栅显示系统中,用来表示图形的却是一个个离散的象素。这种用离散量表示连续量引起的失真现象称之为混淆(或走样:aliasing)。

反混淆定义:在图形显示过程中,用于减少或消除混淆现象的方法

三种混淆表现:

图形边界呈阶梯状、图形细节失真、狭小图形遗失(动画序列中时隐时现,产生闪烁)。

三种反混淆方法:提高分辨率方法、非加权区域采样方法、加权区域采样方法。

1.提高分辨率方法

原理:假如把显示器分辨率(水平、垂直)提高一倍,直线经过两倍的象素,线段上的阶梯锯齿也增加一倍,但同时每个阶梯的宽度也减小了一倍,所以显示出的直线段看起来就平直光滑了一些。

特点:方法简单,但代价非常大,不经济。

2.非加权区域采样方法

原理:将直线段看作具有一定宽度的狭长矩形;当直线段与某象素有交时,求出两者相交区域的面积;根据相交区域的面积,确定该象素的亮度值。

特点:象素的亮度与相交区域的面积成正比,而与相交区域落在象素内的位置无关,这仍然会导致锯齿效应;直线条上沿理想直线方向的相邻两个象素有时会有较大的灰度差。3.加权区域采样方法

原理:改进非加权区域采样方法的第3条性质,相交区域对象素亮度的贡献依赖于该区域与象素中心的距离。

4.具体算法:上课PPT P12~27

第五章二维裁剪

?为什么裁剪,裁剪的目的

判断图形元素是否落在裁剪窗口之内并找出其位于内部的部分。

在使用计算机处理图形信息时,计算机内部存储的图形往往比较大,而屏幕显示的只是图的一部分。因此需要确定图形中哪些部分落在显示区之内,哪些落在显示区之外,以便只显示落在显示区内的那部分图形。这个选择过程称为裁剪。

?裁剪与扫描转换谁先谁后,各自优点?

先裁剪再扫描转换----常用,计算量小

先扫描转换再裁剪----算法简单,对有快速测试方法或硬件支持情形有利

?直线段裁剪

A.三种关系:(待裁剪线段和窗口的关系)上课PPT P6

?线段完全可见(P0P1均在窗口中,如AB)

?显然不可见(P0P1均在窗口某条边所在直线的外侧中,如EF)

?线段至少有一端点在窗口之外,但非显然不可见(如CD,GH,IJ),此时需要进一步求交来

确定线段是否有可见部分并求出可见部分。

B.Cohen-Sutherland算法:上课PPT P9~17

1.原理:

2.流程:

3.计算:

C.中点分割算法原理上课PPT P18~20

D.直接求交算法不考

?多边形裁剪

多边形裁剪的特点,多边形裁剪是否就是边界直线的裁剪?

多边形是一个封闭区域,裁剪后仍应当是封闭的多边形。但是多边形的边被裁剪后一般不再封闭了,需要用窗口边的适当部分来封闭它。

Sutherland-Hodgman基本思想(重要!)执行过程逐边图示上课PPT P27~34

Weiler-Athenton算法不考

?字符裁剪不考

第六章图形变换

?三种二维基本变换(错切、对称变换不考) 上课PPT P15~17

平移变换:

旋转变换:

放缩变换:

齐次坐标:上课PPT P18~19定义:

构造:

为什么引入:

经常要对图形对象做连续多个变换,希望这些多个变换可以合成为一个大的复合变换。于是引入齐次坐标,目的:使各种转换的表示形式一致,使变换合成更加容易。

?构造复合变换(顺序!)上课PPT P23~29

复杂变换不直接计算,而是分解为多个基本变换,再依次作用于图形(先分解再合成)。

复合变换时,先作用的变换矩阵在右端,后作用的变换矩阵在左端。

?参考点不在原点的复合变换的处理方法:

如果相对某个一般的参考点(xf,yf)作缩放、旋转变换,相当于将该点移到坐标原点处,然后进行缩放、旋转变换,最后将(xf,yf)点移回原来的位置。

?二维图形的显示流程图

世界坐标系,局部坐标系,设备坐标系,窗口,视区的定义。

坐标系:建立了图形与数之间的对应联系

世界坐标系(world coordinate),即用户坐标系(user coordinate) :相对于物体所在空间。

局部坐标系(local coordinate):相对于物体。

屏幕坐标系(screen coordinate),即设备坐标系(device coordinate):在显示器或绘图纸上绘制图形所用的二维坐标系。

窗口:图形很大,屏幕有限,在世界坐标系中指定一个矩形区域,用来指定要显示的图形。视区:在设备坐标系(屏幕或绘图纸)上指定的矩形区域,用来指定窗口内的图形在屏幕上显示的大小及位置。

流程:

?三维几何变换不考

?作业三

三维图形学

第七章三维图形学(投影)

A.四个新问题与解决技术:

①在二维屏幕上如何显示三维物体?

?显示器屏幕、绘图纸等是二维,显示对象是三维的。

?解决方法----投影

②如何表示三维物体?

?二维形体的表示---直线段、折线、曲线段、多边形区域;

?三维形体的表示---空间直线段、折线、曲线段、多边形、曲面片等;

?二维形体的输入简单(图形显示设备与形体的维数一致)三维形体的输入、运算、有效性

保证困难。

?解决方法----各种用于形体表示的理论、模型、方法。

③如何反映遮挡关系?

?三维物体之间或物体的不同部分之间存在相互遮挡关系,遮挡关系是空间位置关系的重

要组成部分;

?应当如何反映?

?解决方法----消除隐藏面与隐藏线。

④如何产生真实感图形?

?何谓真实感图形;

?人们观察现实世界产生的真实感来源于:

?空间位置关系----近大远小的透视关系和遮挡关系;

?光线传播引起的物体表面颜色的自然分布;

?解决方法----建立光照明模型、开发真实感图形绘制方法。

B.投影

1.投影的照相机类比:上课PPT P9~10

2.投影类型:平行、透视,各自特征

透视投影:上课PPT P16

?充要条件:投影中心与投影平面之间的距离为有限

?例子:室内白炽灯的投影,视觉系统

?特点:产生近大远小的视觉效果,图形深度感强,看起来真实。但是原有的平行,等距

关系不能保持。

?灭点:不平行于投影平面的平行线,经过透视投影之后收敛于一点,称为灭点。如AB,CD

投影后收敛于P。

平行投影: 上课PPT P18

?投影中心与投影平面之间的距离为无限。

?是透视投影的极限状态。

3.观察坐标系的作用,为什么引入?

?观察坐标系(View Reference Coordinate, VRC)照相机所在的坐标系。

?采用观察坐标系,投影简单。简化和加速投影变换。

4.视见体的要素和形状上课PPT P24~27

(1)在投影平面上指定一个窗口(类似于二维显示的视口)。以umin, umax, vmin, vmax四个量

确定。

注意:窗口不一定关于原点对称。

(2)用户指定投影参考点(Projection Reference Point, PRP) ,这也确定了投影中心与投影方

向。

透视投影:PRP就是投影中心(Center of Projection, COP)

平行投影:投影方向DOP=窗口中心CW-PRP

(3)指定前裁剪面与后裁剪面

人眼只能看到有限范围内的景物

裁剪面平行于投影平面,记为:n=F, n=B

位于前后裁剪面间的有限是观察空间称为视见体或裁剪空间,物体在被投影前,要关于视见体进行裁剪。

第八章三维图形学(三维形体的表示)

A.三维模型表示方法的分类和各自特点

几何模型:线框模型、表面模型、实体模型

1.线框模型:

?将形体表示成一组轮廓线的集合

?简单、处理速度快

?与形体之间不存在一一对应关系

?是真实物体的高度抽象,不适合真实感显示

2.表面模型:

?将形体表示成一组表面的集合

?更多的情况是多边形表面集合

?形体与其表面一一对应,适合于真实感显示

3.实体模型:

?以基本体素的并,交,差等组合操作描述实体,主要用于CAD/CAM

?包含了描述一个实体所需的较多信息,如几何信息、拓扑信息

过程模型

?以一个过程和相应的控制参数描述,例如用一些控制参数和一个生成规则描述的植物?以一个数据文件和一段代码的形式存在

?包括----粒子系统、L系统、迭代函数系统等

B.实体

1.实体的特点:能客观存在

2.实体定义:正则点集,表面是二维流形

具有一定的形状(流体不是实体);具有封闭的边界(表面);内部连通的三维点集;占据有限的空间(体积有限);经过任意运算后仍然是有效实体。

3.欧拉公式:内容,适用性

简单多面体满足下面的欧拉公式(必要非充分)

v-e+f=2, v,e,f分别是顶点数,边数和面数。

非简单多面体满足广义欧拉公式(必要非充分) 。

v-e+f-r=2(s-h), r,h,s分别是表面上孔的个数,贯穿多面体孔的个数,互相分离的多面体数。优点: 精确表示物体、表示能力强、几何变换容易、适于显示处理。

缺点: 表示复杂、有效性难以保证、集合运算复杂。

C.实体的各种表示方法的原理、特点

1.特征表示:

?用一组特征参数表示一组类似的物体

?特征包括形状特征、材料特征等

?适用于工业上标准件的表示

?可存放在数据库中,通过一组参数值调用

2.空间分割表示(体素表示)

?空间分割表示中,实体被分为互不相交的“粘合”在一起的基本体素。

?空间位置枚举表示

?选择一个立方体空间,均匀划分

?用三维数组C[I][J][K]表示物体,数组中的元素与单位小立方体一一对应

?当C[I][j][k] = 1时,表示对应的小立方体被物体占据

?当C[I][j][k] = 0时,表示对应的小立方体没有被物体占据

优点:

是一种穷举表示法,可以表示任何物体

容易实现物体间的集合运算

容易计算物体的整体性质,如体积等

缺点:

占用大量的存储空间,如1024*1024*1024 = 1G bits

没有边界信息,不适于图形显示

对物体进行几何变换困难,如非90度的旋转变换

是物体的非精确表示

3.八叉树表示

?对空间位置枚举表示的空间分割方法作了改进:均匀分割→自适应分割。

?八叉树建立过程

?八叉树的根节点对应整个物体空间

?如果它完全被物体占据,将该节点标记为F(Full),算法结束;

?如果它内部没有物体,将该节点标记为E(Empty),算法结束;

?如果它被物体部分占据,将该节点标记为P(Partial),并将它分割成8个子立方体,对每

一个子立方体进行同样的处理

优点:

可以表示任何物体

容易实现物体间的集合运算

容易计算物体的整体性质,如体积等

较空间位置枚举表示占用的存贮空间少

缺点:

没有边界信息,不适于图形显示

对物体进行几何变换困难

是物体的非精确表示

4.单元分解表示

?对空间位置枚举表示的空间分割方法作了改进:单一体素→多种体素

?以不同类型的基本体素的粘合来构造实体。

?体素可以包括任何简单实体(与球拓扑同构)。

?单元分解表示法不具有唯一性。

优点:

表示简单

容易实现几何变换

基本体素可以按需选择,表示范围较广

可以精确表示物体

缺点:

物体的表示不唯一

物体的有效性难以保证

5.边界表示:使用最多,简单多面体的欧拉公式

简单多面体:与球拓扑同构的多面体,即它可以被连续变换为一个球。

简单多面体满足下面的欧拉公式(必要非充分)

v-e+f=2, v,e,f分别是顶点数,边数和面数。

6.SWEEP体:平移、旋转

?平移sweep----将一个二维区域沿着一个矢量方向推移,可扩充:允许推移过程中大小

可变。

?旋转sweep----将一个二维区域绕旋转轴旋转一周。

7.CSG树

?将物体表示成一棵二叉树,称为CSG树

?叶节点----基本体素,如立方体、圆柱体等

?中间节点----正则集合运算

优点:

表示简单、直观

也是物体的构造方法,可用作图形输入手段

容易计算物体的整体性质

物体的有效性自动得到保证

缺点:

表示不唯一

不能直接用于显示

求交计算麻烦

第九章三维图形学(曲线曲面)

A.曲线曲面

曲线的参数表示的一般形式:

在几何造型系统中,曲线曲面方程通常表示成参数的形式,即曲线上任一点的坐标均表示成给定参数的函数。

假定用t表示参数,平面曲线上任一点P可表示为:

P(t)=[x(t), y(t)]

空间曲线上任一三维点P可表示为:

P(t)=[x(t), y(t), z(t)]

最简单的参数曲线是直线段,端点为P1、P2的直线段参数方程可表示为:P(t)=P1+(P2-P1)t t∈[0,1]

注意上述表达方式是:

X(t)=X1+(X2-X1)t

Y(t)=Y1+(Y2-Y1)t t∈[0,1]

的简单表达方式。

下面有许多同样方法表达的公式,意义相同。

曲线弧长,法向,曲率的定性分析

弧长:上课PPT P15

法向:上课PPT P18

曲率:上课PPT P20

曲线的几何连续性(GC )的意义

几何连续性:

如果曲线在t=t0处连续,即P(t0-)=P(t0+),称曲线在该点上0阶几何连续(GC0)。

如果曲线在t=t0处是GC0的,并且切向量方向连续,即存在常数a>0,使:

P’(t0-)=aP’(t0+)

称曲线在该点上1阶几何连续(GC1)。

如果曲线在t=t0处是GC1的,并且副法向量方向连续、曲率连续,即:

B(t0-)=B(t0+); k(t0-)=k(t0+)

称曲线在该点上2阶几何连续(GC2)

B.Bezier曲线上课PPT P36~43

Bernstein基函数

三次Bezier曲线的矩阵表示和计算

3次Bezier曲线:

P(t)

=P0BEZ0,3(t)+P1BEZ1,3(t)+P2BEZ2,3(t)+P3BEZ3,3(t)

=P0(1-t)3 +3P1t(1-t)2+3P2t2(1-t) +P3t3

三次Bezier曲线的特征与性质

上课PPT P46~55

三次Bezier曲线的离散计算(de Casteljau方法)

上课PPT P58~66

第十章三维图形学(颜色)

A.颜色

1.半色调技术原理

许多硬拷贝设备只能产生黑白两级灰度,如何以这样的设备产生更多的颜色?

方法:半色调技术(颜色抖动),它是一种牺牲空间分辨率来增加灰度级的方法。

如:用2×2象素模拟一个象素能产生5个灰度级,但代价是显示器的水平和垂直分辨率都降低了一倍。3×3时?

2.色彩的描述:从心理学和视觉的角度

从心理学和视觉的角度出发,颜色有如下三个特性:色调(Hue)、饱和度(Saturation)和明度(Lightness)。

色调,是一种颜色区别于其它颜色的因素,也就是我们平常所说的红、绿、蓝、紫等;

饱和度是指颜色的纯度,鲜红色饱和度高,而粉红色的饱和度低。

明度是视觉系统感知到的亮度。

3.三基色:Red(红)、Green(绿)、Blue(蓝)

4.各种颜色模型的特点和应用场合

①RGB颜色模型:

?它采用三维直角坐标系,红、绿、蓝为原色,各个原色混合在一起可以产生复合色。

?通常采用单位立方体来表示

?在正方体的主对角线上,各原色的强度相等,产生由暗到明的白色,也就是不同的灰度

值。

?正方体的其它六个角点分别为红、黄、绿、青、蓝和品红。

?需要注意的一点是,RGB颜色模型所覆盖的颜色域取决于显示设备荧光点的颜色特性,

是与硬件相关的。

②CMY模型:

?以红、绿、蓝的补色青(Cyan)、品红(Magenta)、黄(Yellow)为原色构成。

?应用:硬拷贝设备

?减色模型(从白光中滤去某种颜色)

?如:当在纸面上涂青色颜料时,青色颜料从白光中滤去红光。也就是说,青色是白色减

去红色。品红颜色吸收绿色,黄色颜色吸收蓝色。

?假如在纸面上涂了黄色和品红色,那么纸面上将呈现红色,因为白光被吸收了蓝光和绿

光,只能反射红光了。

③YIQ模型:

?Y:亮度,I、Q:色差

?应用:电视传播系统

?为什么采用YIQ模型?

?向后兼容黑白电视

?节约带宽

?Y:I:Q = 4 : 1.5 : 1.5

?Total = 6M

④HSV模型(面向用户的颜色模型)

?H(Hue):色彩,S(Saturation):饱和度,V(Value):明度

?该模型对应于圆柱坐标系的一个圆锥形子集。

?圆锥的顶面对应于V=1,代表的颜色较亮。

第十一章三维图形学(消隐)

A.消隐

1.为什么要消隐?

在用显示设备描述物体的图形时,必须把三维信息经过某种投影变换,在二维的显示表面上绘制出来。由于投影变换失去了深度信息,往往导致图形的二义性。要消除二义性,就必须在绘制时消除被遮挡的不可见的线或面,习惯上称作消除隐藏线和隐藏面,或简称为消隐。

2.消隐结果取决于被观察物体与视点,能根据给定场景和视点说出消隐大致结果。

?线消隐:消隐对象是物体上的边,消除的是物体上不可见的边。

?面消隐:消隐对象是物体上的面,消除的是物体上不可见的面。

3.画家算法原理、关键上课PPT P16~22

画家的作画顺序(先画远景,再画中景,后画近景)暗示出所画物体之间的相互遮挡关系。

算法基本思路:

?把屏幕置成背景色;

?将场景中的物体按其距观察点的远近进行排序,结果放在一张线性表中(距观察点远的

称优先级低,放在表头;距观察点近的称优先级高,放在表尾。该表称为深度优先级表) ;

?按照从表头到表尾的顺序逐个绘制物体。

关键:如何建立深度优先级表?

4.Z缓冲区算法原理和计算:Z缓冲区和帧缓冲区作用上课PPT P23~25

Z缓冲区(Z-Buffer)算法避免了这些复杂的运算。在这个算法里,不仅需要有帧缓存来存放每个象素的颜色值,还需要一个深度缓存(Z-Buffer)来存放每个象素的深度值。

第十二章三维图形学(真实感图形学)

A.光照明模型

1.光照明模型的作用

?当光照射到物体表面时,光线可能被吸收、反射和透射。

?被物体吸收的部分转化为热,反射、透射的光进入人的视觉系统,使我们能看见物体。

?为模拟这一现象,我们建立一些数学模型来替代复杂的物理模型,这些模型就称为明暗

效应模型或者光照明模型。三维形体的图形经过消隐后,再进行明暗效应的处理,可以进一步提高图形的真实感。

2.简单光照明模型与整体光照明模型

1)区别、各自特点:简单光照明模型不能模拟物体之间的相互光照。

2)各包含那些技术?

?简单光照明模型模拟物体表面对光的反射作用。光源被假定为点光源,反射作用被细分

为镜面反射(Specular Reflection)和漫反射(Diffuse Reflecti on)。

?简单光照明模型只考虑物体对直接光照的反射作用,而物体间的光反射作用,只用环境

光(Ambient Light)来表示

?Phong光照明模型就是这样的一种模型。

?整体光照明模型不仅可以模拟物体表面对光的反射作

?用。而且可以模拟光的折射、反射和阴影等,可以用来

?表示物体间的相互光照明影响;

3.环境光,漫反射光,镜面反射

?环境光是指光源间接对物体的影响,是在物体和环境之间多次反射,最终达到平衡时的

一种光。我们近似地认为同一环境下的环境光,其光强分布是均匀的,它在任何一个方向上的分布都相同。例如,透过厚厚云层的阳光就可以称为环境光。

?当光源来自一个方向时,漫反射光均匀向各方向传播,与视点无关,它是由表面的粗糙

不平引起的,漫反射光的空间分布是均匀的。

?对于理想镜面,反射光集中在一个方向,并遵守反射定律。对一般的光滑表面,反射光

集中在一个范围内,且由反射定律决定的反射方向光强最大。

4.Phong模型的计算

三维图形学

A.多边形绘制: Gouraud方法,Phong方法

1.原理,相同和不同

2.它们比单纯的Phong模型绘制好在哪里?

双线性光强插值(Gouraud明暗处理)

双线性光强插值是由Gouraud于1971年提出的,又被称为Gouraud明暗处理,它先计算物体表面多边形各顶点的光强,然后用双线性插值,求出多边形内部区域中各点的光强。

它的基本算法描述如下:

计算多边形顶点的平均法向。

用Phong光照明模型计算顶点的平均光强。

插值计算离散边上的各点光强。

插值计算多边形内域中各点的光强。

在双线性光强插值中,计算速度比以往的简单光照明模型有了很大的提高,同时解决了相邻多边形之间的颜色突变问题,产生的真实感图象颜色过渡均匀,图形显得非常光滑,这是它的优点,

但是,由于采用光强插值,它的镜面反射效果不太理想,而且相邻多边形的边界处的马赫带效应不能完全消除。

Phong提出的双线性法向插值以时间为代价,可以部分解决上述的弊病。双线性法向插值将镜面反射引进到明暗处理中,解决了高光问题。

与双线性光强插值相比,该方法有如下特点:

保留双线性插值,对多边形边上的点和内域各点,采用增量法。

对顶点的法向量进行插值,而顶点的法向量,用相邻的多边形的法向作平均。

由插值得到的法向,计算每个象素的光亮度。

假定光源与视点均在无穷远处,光强只是法向量的函数。

双线性光强插值可以有效的显示漫反射曲面,它的计算量小;而双线性法向插值与双线性光强插值相比,可以产生正确的高光区域,但它的计算量要大的多。

这两个插值算法的增量式光照明模型本身也都存在着一些缺陷,具体表现为:用这类模型得到的物体边缘轮廓是折线段而非光滑曲线;由于透视的原因,使等间距扫描线产生不均匀的效果;插值结果决定于插值方向,不同的插值方向会得到不同的插值结果等。

B.纹理的类型:图像,几何,各自特点

通过颜色色彩或明暗度变化体现出来的表面细节,这种纹理称为颜色纹理。

另一类纹理则是由于不规则的细小凹凸造成的,例如桔子皮表面的皱纹,称为几何纹理。

第十三章分形造型技术

A.分形几何图形的特征

无穷细节、数据+程序表示、自相似

B.经典分形图形的绘制

koch曲线的递归生成思想

Canter集、Sierpinski垫片

递归思想:每次对每条边,将线段三等分,描画完第一个三分之一段后旋转60度,接着描画三分之一长度,再旋转-120度,描画三分之一长度,再旋转60度,描画最后三分之一线段长度。

Cantor集C的基本性质:

“长度”为零.

没有孤立点:拓扑学中,集合S 的一个点x 叫做孤点或孤立点,若存在x 的一个开球不包含S 中的其他点。。

闭集.

自相似.

Sierpinski垫片的基本性质

与Cantor集类似。

面积等于0.这也就是说,Sierpinski三角形其实是一条曲线,维度在1-2之间。

C.简单分形几何的维数计算

Cantor集:log2/log3=0.6309

Sierpinski垫片:log3/log2=1.5850

Koch曲线:log4/log3=1.2618

讲座:计算机动画

关键帧动画

变形物体动画

过程动画(粒子系统)

关节动画

第十四章讲座:虚拟现实

虚拟现实系统的特点

虚拟现实技术综合图形、图像、声音、手势、语音等要素,试图给计算机使用者创造一种全新的感官体验,使其具有置身于真实世界的感觉。

主要特点

沉浸感

如同置身于真实环境中:三维、立体、多通道

高交互性

可采取现实生活中习以为常的方式来操纵虚拟环境中的物体

实时性

依视点位置和视线方向实时地改变画面,并实时产生听觉、触觉/力觉响应

怎样生成立体图像

产生沉浸感的至关重要的因素

立体图像与观察者视点和视线方向一致

实时生成

人类立体视觉的产生

立体图像生成的照相机模型

为生成立体图像,计算机必须针对同一场景生成两幅不同的图像

立体视觉的捕获

虚拟现实交互设备

WIMP交互范式已不再适用

Windows,Icons,Menus,Pointing devices

用户将通过一系列新的交互手段,与虚拟世界中的物体进行直接的、三维的交互三维鼠标

WAND

数据手套

麦克风

三维定位跟踪设备

手持式交互设备

数据手套

虚拟现实与增强现实技术的区别

AR-增强现实:将虚拟的东西和现实中的物品相结合,显示在显示设备上。VR:显示设备看到的都是虚拟的物品。

<5% 考基本概念

计算机图形学总结

第一章绪论 计算机图形学的基本概念 计算机图形学:是研究怎样用数字计算机生成、处理和显示图形的一门学科。 图形:计算机图形学的研究对象。 构成图形的要素:几何要素——几何属性(点、线、面、体) 非几何要素——视觉属性(明暗、灰度、色彩、纹理、透明性、线型、线宽) 表示图形的方法:点阵表示;参数表示 研究内容 计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法,构成了计算机图形学的主要研究内容。 图形硬件、图形标准、图形交互技术、光栅图形生成算法、曲线曲面造型、实体造型、真实感图形计算与显示算法,以及科学计算可视化、计算机动画、自然景物仿真、虚拟现实等。 计算机图形学的应用 图形用户界面;计算机辅助设计与制造(CAD/CAM);4 科学计算的可视化:CT; 真实感图形实时绘制与自然景物仿真;地理信息系统(GIS);Virtual Reality(虚拟现实、灵境);事务和商务数据的图形显示;地形地貌和自然资源的图形显示 过程控制及系统环境模拟;电子出版及办公自动化;计算机动画及广

告 计算机艺术;科学计算的可视化;工业模拟;计算机辅助教学 当前研究热点: 1.真实感图形实时绘制 2.野外自然景物的模拟3 与计算机网络技术的紧密结合 4 计算机动画 5 用户接口 6 计算机艺术 7 并行图形处理 所熟悉的图形软件包 图形软件的标准 GKS (Graphics Kernel System) (第一个官方标准,1977) PHIGS(Programmer’s Herarchical Iuteractive Graphics system) 一些非官方图形软件,广泛应用于工业界,成为事实上的标准 DirectX (MS) Xlib(X-Window系统) OpenGL(SGI) Adobe公司Postscript CAGD(Computer Aided Geometric Design) 图形系统的功能1.计算功能2.存储功能3.对话功能4.输入功能5.输出功能 图形输入设备 1 键盘和鼠标 2 跟踪球和空间球 3 光笔 4 数字化仪 5 触摸板 6 扫描仪

计算机图形学复习重点

1:简述计算机图像学与数字图像处理和计算几何以及模式识别等学科之间的区别:计算机图形学研究计算机显示图像,即现实世界在计算机中的表示,其逆过程就是计算机视觉;图像处理:对图像进行处理包括图像变换,图像分析,边缘检测,图像分割等。模式识别:对数据的模式分析,涉及数据分析统计学,模式分类等。 2:第一台图像显示器是起源于:1950年麻省理工的旋风一号。 3:I.E萨瑟兰德被誉为计算机图像学之父,1963年他的SKETCHPAD被作为计算机图像学作为一个新学科的出现的标志。 4:列举计算机图像学的应用领域:计算机辅助绘图设计;事务管理中的交互式绘图;科学技术可视化;过程控制;计算机动画及广告;计算机艺术;地形地貌和自然资源的图形显示。5:计算机图形系统包括哪些组成:硬件设备和相应的程序系统(即软件)两部分组成。6:图像系统的基本功能:计算功能;存储功能;输入功能;输出功能;对话功能。 7:图像系统的分类:用于图形工作站的图形系统;以PC为基础的图形系统;小型智能设备上的图形系统 8:显示器的分类:阴极射线管(CRT);液晶显示器(LCD);LED(发光二极管)显示器;等离子显示器。 9:什么是CRT?其组成部分:即阴极射线管。组成有电子枪,加速结构,聚焦系统,偏转系统,荧光屏。 10:彩色阴极射线管生成彩色的方法:射线穿透法。应用:主要用于画线显示器。优点:成本低。缺点:只能产生有限几种颜色;影孔板法。 11:显示器的刷新方式经历了哪几个阶段:随机扫描显示;直视存储管式显示;光栅扫描显示。 12:什么是显示处理器,它与CPU是一回事吗?:显示处理器又称视觉处理器,是一种专门在PC,游戏机和一些移动设备上图像运算工作的微处理器,是显卡中重要组成部分。它的作用是代替CPU完成部分图形处理功能,扫描转换,几何变换,裁剪,光栅操作,纹理映射等。 13:什么是显存,它与内存的区别:显存全称显示内存,即显示卡专用内存。它负责存储显示芯片需要处理的各种数据。电脑的内存是指CPU在进行运算时的一个数据交换的中转站,数据由硬盘调出经过内存条再到CPU。区别:显存是显卡缓冲内存。内存是电脑的内部存储器。是不同的概念。 14:黑白显示器需要1个位平面;256级灰度显示器需要8个,真彩色需要24个位平面。15:OpenGL是什么?它在计算机图形学中的作用?OpenGL是一个工业标准的三维计算机图形软件接口,可以方便的用它开发出高质量的静止或动画三维彩色图形,并有多种特殊视觉效果,如光照,文理,透明度,阴影等。 16:图元:图形元素,可以编辑的最小图形单位。是图形软件用于操作和组织画面的最基本素材,是一组最简单,最通用的几何图形或字符。基本二维图元包括:点,直线,圆弧,多边形,字体符号和位图等。 17:直线的生产算法有:逐点比较法;数值微分法(DDA);中点画线法;Bresenham算法。18:采用哪种平移方法可以使任意二维直线变为第一和第二象限中的直线:逐点比较法。19:交互式图形系统的基本交换任务包括:定位,选择,文字输入,数值输出。定位任务是向应用程序指定一个点的坐标,定位中考虑的基本问题:坐标系统;分辨率;网格;反馈。选择任务是指从一个被选集中挑选出一个元素来。在作图系统中,操作命令、属性值、物种种类、物体等都可能是被选集。被选集可根据其元素的变化程度分为可变集和固定集。可变集的选择技术:指名和拾取。固定集的选择技术:指名技术、功能键、菜单技术、模式识

计算机图形学试题附答案完整版

名词解释 将图形描述转换成用像素矩阵表示的过程称为扫描转换。 1.图形 2.像素图 3.参数图 4.扫描线 5.构造实体几何表示法 6.投影 7.参数向量方程 8.自由曲线 9.曲线拟合 10.曲线插值 11.区域填充 12.扫描转换 三、填空 1.图形软件的建立方法包括提供图形程序包、和采用专用高级语言。 2.直线的属性包括线型、和颜色。 3.颜色通常用红、绿和蓝三原色的含量来表示。对于不具有彩色功能的显示系统,颜色显示为。 4.平面图形在内存中有两种表示方法,即和矢量表示法。 5.字符作为图形有和矢量字符之分。 6.区域的表示有和边界表示两种形式。 7.区域的内点表示法枚举区域内的所有像素,通过来实现内点表示。 8.区域的边界表示法枚举区域边界上的所有像素,通过给赋予同一属性值来实现边界表示。 9.区域填充有和扫描转换填充。 10.区域填充属性包括填充式样、和填充图案。 11.对于图形,通常是以点变换为基础,把图形的一系列顶点作几何变换后,

连接新的顶点序列即可产生新的变换后的图形。 12.裁剪的基本目的是判断图形元素是否部分或全部落在之内。 13.字符裁剪方法包括、单个字符裁剪和字符串裁剪。 14.图形变换是指将图形的几何信息经过产生新的图形。 15.从平面上点的齐次坐标,经齐次坐标变换,最后转换为平面上点的坐标,这一变换过程称为。 16.实体的表面具有、有界性、非自交性和闭合性。 17.集合的内点是集合中的点,在该点的内的所有点都是集合中的元素。 18.空间一点的任意邻域内既有集合中的点,又有集合外的点,则称该点为集合的。 19.内点组成的集合称为集合的。 20.边界点组成的集合称为集合的。 21.任意一个实体可以表示为的并集。 22.集合与它的边界的并集称集合的。 23.取集合的内部,再取内部的闭包,所得的集合称为原集合的。 24.如果曲面上任意一点都存在一个充分小的邻域,该邻域与平面上的(开)圆盘同构,即邻域与圆盘之间存在连续的1-1映射,则称该曲面为。 25.对于一个占据有限空间的正则(点)集,如果其表面是,则该正则集为一个实体(有效物体)。 26.通过实体的边界来表示一个实体的方法称为。 27.表面由平面多边形构成的空间三维体称为。 28.扫描表示法的两个关键要素是和扫描轨迹。 29.标量:一个标量表示。 30.向量:一个向量是由若干个标量组成的,其中每个标量称为向量的一个分量。 四、简答题 1. 什么是图像的分辨率?

计算机图形学课程设计报告

一、设计内容与要求 1.1、设计题目 算法实现时钟运动 1.2、总体目标和要求 (1)目标:以图形学算法为目标,深入研究。继而策划、设计并实现一个能够表现计算机图形学算法原理的或完整过程的演示系统,并能从某些方面作出评价和改进意见。通过完成一个完整程序,经历策划、设计、开发、测试、总结和验收各阶段,达到巩固和实践计算机图形学课程中的理论和算法;学习表现计算机图形学算法的技巧;培养认真学习、积极探索的精神。 (2)总体要求:策划、设计并实现一个能够充分表现图形学算法的演示系统,界面要求美观大方,能清楚地演示算法执行的每一个步骤。(3)开发环境:Viusal C++ 6.0 1.3、设计要求 内容: (1)掌握动画基本原理; (2)实现平面几何变换; 功能要求: (1)显示时钟三个时针,实现三根时针间的相互关系;

(2)通过右键菜单切换时钟背景与时针颜色; 1.4设计方案 通过使用OpenGL提供的标准库函数,综合图形学Bresenham画线和画圆的算法,OpenGL颜色模型中颜色表示模式等实现指针式时钟运动,并通过点击右键菜单实习时钟背景与时针颜色的转换。根据Bresenham画线和画圆的算法,画出时钟的指针和表盘。再根据OpenGL颜色模型定义当前颜色。设置当时钟运行时交换的菜单,运行程序时可变换时钟背景与时针的颜色。最后再设置一个恢复菜单恢复开始时表盘与指针的颜色。

二、总体设计 2.1、过程流程图

2.2、椭圆的中点生成算法 1、椭圆对称性质原理: (1)圆是满足x轴对称的,这样只需要计算原来的1/2点的位置;(2)圆是满足y轴对称的,这样只需要计算原来的1/2点的位置; 通过上面分析可以得到实际上我们计算椭圆生成时候,只需要计算1/4个椭圆就可以实现对于所有点的生成了。 2、中点椭圆算法内容: (1)输入椭圆的两个半径r1和r2,并且输入椭圆的圆心。设置初始点(x0,y0)的位置为(0,r2); (2)计算区域1中央决策参数的初始值 p = ry*ry - rx*rx*ry + 1/4*(rx*rx); (3)在区域1中的每个Xn为止,从n = 0 开始,直到|K|(斜率)小于-1时后结束; <1>如果p < 0 ,绘制下一个点(x+1,y),并且计算 p = p + r2*r2*(3+2*x); <2>如果P >=0 ,绘制下一个点(x+1,y-1),并且计算 p = p + r2*r2*(3+2*point.x) - 2*r1*r1*(y-1) (4)设置新的参数初始值; p = ry*ry(X0+1/2)*(X0+1/2) + rx*rx*(Y0-1) - rx*rx*ry*ry; (5)在区域2中的每个Yn为止,从n = 0开始,直到y = 0时结束。 <1>如果P>0的情况下,下一个目标点为(x,y-1),并且计算 p = p - 2rx*rx*(Yn+1) + rx*rx;

计算机图形学复习资料

第一章 一、什么是计算机图形学? 计算机图形学是研究如何利用计算机来显示、生成和处理图形的原理、方法和技术的一门学科。 国际标准化组织(ISO)定义: 计算机图形学是研究通过计算机将数据转换为图形,并在专门显示设备上显示的原理、方法和技术的学科 电气与电子工程协会(IEEE)定义: 计算机图形学是利用计算机产生图形化的图像的艺术和学科。 三、举例说明计算机图形学有哪些应用,分别用来解决什么实际问题? 应用领域: 1.计算机辅助设计与制造(CAD,CAM) 用于大楼,汽车,飞机,建筑工程,电子路线等的设计和制作过程中。 2.计算机辅助绘图 计算机辅助绘图的典型例子包括计算机可视化,近年来,这种技术已用于有限元分析的后处理,分子模型构造,地震数据处理,大气科学,生物信息及生物化学等领域。 3.计算机辅助教学(CAI) 4.办公自动化和电子出版社 5.计算机艺术 6.在工业控制及交通方面的应用 7.在医疗卫生方面的应用 8.图形用户界面 四、人机交互,什么是一致性原则 人机交互学是一门关于设计、评估和执行交互式计算机系统以及研究由此而发生的相关现象的学科。 一致性原则:指在设计系统的各个环节时,应遵从统一的、简单的规则,保证不出现例外和特殊的情况,无论是信息显示还是命令输入都应如此 一致性原则包含这样一些内容:1.一个特定的图符应该始终只有一个含义而不能依靠上下文来代表多个动作或对象;2.菜单总是放在相同的关联位置,使用户不必总是去寻找;3.键盘上的功能键,控制键以及鼠标上的按钮的定义需要前后一致;4.总是使用一种彩色编码,使相同的颜色在不同的情况下不会有不同的含义;5.输入时交互式命令和语法的一致性等 第二章 四、CRT的组成和工作原理是什么? CRT(Cathode Ray Tube)阴极射线管 ?是一种真空器件,它利用电磁场产生高速的、经过聚焦的电子束,偏转到屏幕的不

计算机图形学基础期末考试试题

一、填空题 1.将多边形外部一点A与某一点B用线段连接,若此线段与多边形边界相交的次数为??????????,则点B在多边形外部。若此线段与多边形边界相交的次数为??????????,则点B在多边形内部。 2.生成直线的四点要求是_______________________,____________________________,____________________________________,速度要快。 3.由5个控制顶点Pi(i=0,1,…4)所决定的3次B样条曲线,由??????????段3次B样条曲线段光滑连接而成。 4.用于减少或克服在“光栅图形显示器上绘制直线、多边形等连续图形时,由离散量表示连续量引起的失真”的技术叫??????????。 5.图形的数学表示法一般有??????????,??????????,??????????。 1.一个交互性的计算机图形系统应具有、、、、 输入等五方面的功能。 2.阴极射线管从结构上可以分为、和。 3.常用的图形绘制设备有和,其中支持矢量格式。 4.PHIGS和GKS将各种图形输入设备从逻辑上分为六种:定位设备、笔划设 备、、、和。 5.通常可以采用和处理线宽。 6.齐次坐标表示就是用维向量表示n维向量。 7.平行投影根据可以分为投影和投影。 8.一个交互式计算机图形处理系统包括图形软件和_____________,图形软件又分为 _____________、_____________和三部分。 9.构成图形的要素包括和,在计算机中通常用采用两种方法来表示 图形,他们是和。 10.荫罩式彩色显像管的结构包括、、和。 11.目前常用的PC图形显示子系统主要由3个部件组成:、和一 个ROM BIOS芯片。 12.在交互输入过程中,图形系统中有_____________、、和其组 合形式等几种输入(控制)模式。 13.填充一个特定区域,其属性选择包括、和。 14.计算机中表示带有颜色及形状信息的图和形常用和参数法,其中用参数法描 述的图形称为,用描述的图形称为。 15.在显示技术中,我们常常采用提高总的光强等级。 16.常用的交互式绘图技术有、、和。

计算机图形学课程设计书

计算机图形学课程设计 书 文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]

课程设计(论文)任务书 理学院信息与计算科学专业2015-1班 一、课程设计(论文)题目:图像融合的程序设计 二、课程设计(论文)工作: 自2018 年1 月10 日起至2018 年1 月12日止 三、课程设计(论文) 地点: 2-201 四、课程设计(论文)内容要求: 1.本课程设计的目的 (1)熟悉Delphi7的使用,理论与实际应用相结合,养成良好的程序设计技能;(2)了解并掌握图像融合的各种实现方法,具备初步的独立分析和设计能力;(3)初步掌握开发过程中的问题分析,程序设计,代码编写、测试等基本方法;(4)提高综合运用所学的理论知识和方法独立分析和解决问题的能力; (5)在实践中认识、学习计算机图形学相关知识。 2.课程设计的任务及要求 1)基本要求: (1)研究课程设计任务,并进行程序需求分析; (2)对程序进行总体设计,分解系统功能模块,进行任务分配,以实现分工合作;(3)实现各功能模块代码; (4)程序组装,测试、完善系统。 2)创新要求: 在基本要求达到后,可进行创新设计,如改进界面、增加功能或进行代码优化。

3)课程设计论文编写要求 (1)要按照书稿的规格打印誊写课程设计论文 (2)论文包括封面、设计任务书(含评语)、摘要、目录、设计内容、设计小结(3)论文装订按学校的统一要求完成 4)参考文献: (1)David ,《计算机图形学的算法基础》,机械工业出版社 (2)Steve Cunningham,《计算机图形学》,机械工业出版社 (3) 5)课程设计进度安排 内容天数地点 程序总体设计 1 实验室 软件设计及调试 1 实验室 答辩及撰写报告 1 实验室、图书馆 学生签名: 2018年1月12日 摘要 图像融合是图像处理中重要部分,能够协同利用同一场景的多种传感器图像信息,输出一幅更适合于人类视觉感知或计算机进一步处理与分析的融合图像。它可明显的改善单一传感器的不足,提高结果图像的清晰度及信息包含量,有利于更为准确、更为可靠、更为全面地获取目标或场景的信息。图像融合主要应用于军事国防上、遥感方面、医学图像处理、机器人、安全和监控、生物监测等领域。用于较多也较成熟的是红外和可见光的融合,在一副图像上显示多种信息,突出目标。一般情况下,图像融合由

计算机图形学复习课总结

绪论 1点阵法和参数法的概念。图形、图像的概念。 点阵法是用具有颜色信息的点阵来表示图形的一种方法,它强调图形由哪些点组成,并具有什么灰度或色彩。 参数法是以计算机中所记录图形的形状参数与属性参数来表示图形的一种方法。 通常把参数法描述的图形叫做图形(Graphics) 把点阵法描述的图形叫做图象(Image) 2 计算机图形学的概念? 计算机图形学是研究怎样用计算机表示、生成、处理和显示图形的一门学科。 3图形包括哪两方面的要素,试举例说明。 图形包括两方面的要素,其中有几何要素和非几何要素 1. 几何要素:点,线,面,体等; 2. 非几何要素:明暗,灰度,色彩等 4一个交互性的图形系统具有哪些功能? 5个功能:输入功能、存储功能、计算功能、输出功能和交互功能 5图形输出设备包括什么?常用的图形绘制设备有哪两种? 图形输出设备包括图形显示设备和图形绘制设备,常用的图形绘制设备有打印机和绘图仪。 6与计算机图形学相关的学科有哪些?各自研究的内容是什么?

计算机视觉:研究用计算机来模拟生物外显或宏观视觉功能的科学和技术图像处理:对图象进行各种加工以改善图象的视觉效果 C语言程序基础(课件中p17, p55-59,常用画图函数) 1已知画“王”的C语言程序(如下),要求改编一个画“田”字的程序,该字的字高和字宽均为50,字的左上角点坐标为(60, 80)。 #include "graphics.h" #include "conio.h" main() { int gdriver=DETECT,gmode; int x,y; initgraph(&gdriver,&gmode,“”); /*初始化图形系统*/ cleardevice(); /*清除图形屏幕*/ moveto(100,40); /*绝对移动光标*/ linerel(40,0); /*从当前位置按增量方式画线*/ x=getx(); y=gety(); moveto(x,y+20); linerel(-40,0); moverel(0,20); /* 以增量方式移动当前光标*/ linerel(40,0); moverel(-20,0); linerel(0,-40); getch(); closegraph(); /*关闭图形系统,返回文本模式*/ } 2画一个填充颜色的圆(画一个填充颜色的矩形,已知矩形的左下角(0,20),右上角坐标为(100,120)),圆心坐标(60,60),半径100,要求背景色为1号色(blue),圆的边界色为红色,填充色为Green,(函数:circle floodfill) #include "graphics.h"

计算机图形学复习要点

计算机图形学 C o m p u t e r G r a p h i c s E-M A I L:t y z h u w e n b o@163.c o m 主要内容 ?计算机图形学绪论 ?基本二维图形的生成(图形生成算法原理)?二维变换及二维观察(二维图形变化的数 学原理) ?三维变换及三维观察(三维图形变化的数 学原理及变化方法) ?曲线曲面的生成(三维曲线曲面的几种形 式) ?总结全课程 图形学概述 计算机图形学(C o m p u t e r G r a p h i c s) ?定义:计算机图形学是研究怎样用数字计 算机生成、处理和显示图形的一门学科。 ?图形表示和绘制+输入/输出设备 M o d e l i n g+R e n d e r i n g v i a I n p u t/o u t p u t ?计算机图形学计算机科学中,最为活跃、 得到广泛应用的分支之一 数据计算机图形系统图形 计算机图形学 图形及图形的表示方法 ?图形:计算机图形学的研究对象 ?能在人的视觉系统中产生视觉印象的 客观对象 ?包括自然景物、拍摄到的图片、用数学 方法描述的图形等等 ?构成图形的要素 ?几何要素:刻画对象的轮廓、形状等 ?非几何要素:刻画对象的颜色、材质 等 ?表示方法 ?点阵表示 ?枚举出图形中所有的点(强调图 形由点构成) ?简称为图像(数字图像) ?参数表示 ?由图形的形状参数(方程或分析 表达式的系数,线段的端点坐标 等)+属性参数(颜色、线型等)来 表示图形简称为图形 ?图形主要分为两类: ?基于线条信息表示 ?明暗图(S h a d i n g) 第一章绪论 ?1.计算机图形学的发展简史 ?2.计算机图形学的研究内容 ?3.计算机图形学的应用 ?4.常用的图形设备 1.1C G的发展历史 ?50年代 ?1950年,第一台图形显示器作为美国 麻省理工学院(M I T)旋风I号 (W h i r l w i n d I)计算机的附件诞生了 ?1958年,美国C a l c o m p公司由联机的 数字记录仪发展成滚筒式绘图仪, G e r B e r公司把数控机床发展成为平板 式绘图仪 ?50年代末期,M I T的林肯实验室在 “旋风”计算机上开发S A G E空中防 御体系 ?60年代 ?1962年,M I T林肯实验室的I.E. S u t h e r l a n d发表了一篇题为 “S k e t c h p a d:一个人机交互通信的图 形系统”的博士论文--确定了交互图 形学作为一个学科分支(提出基本交互 技术、图元分层表示概念及数据结 构…)。 ?1962年,雷诺汽车公司的工程师P i e r r e Béz i e r提出Béz i e r曲线、曲面的理论 ?1964年M I T的教授S t e v e n A.C o o n s提出 了超限插值的新思想,通过插值四条任 意的边界曲线来构造曲面。 ?70年代(蓬勃发展时期) ?光栅图形学迅速发展 ?区域填充、裁剪、消隐等基本图形 概念、及其相应算法纷纷诞生 ?图形软件标准化 ?1974年,A C M S I G G R A P H的“与机 器无关的图形技术”的工作会议 ?A C M成立图形标准化委员会,制定 “核心图形系统”(C o r e G r a p h i c s S y s t e m) ?I S O发布C G I、C G M、G K S、P H I G S

计算机图形学课程教学大纲

《计算机图形学》课程教学大纲一、课程基本信息 课程代码:110053 课程名称:计算机图形学 英文名称:Computer Graphics 课程类别:专业课 学时:72 学分: 适用对象:信息与计算科学专业本科生 考核方式:考试(平时成绩占总成绩的30%) 先修课程:高级语言程序设计、数据结构、高等代数 二、课程简介 中文简介: 计算机图形学是研究计算机生成、处理和显示图形的学科。它的重要性体现在人们越来越强烈地需要和谐的人机交互环境:图形用户界面已经成为一个软件的重要组成部分,以图形的方式来表示抽象的概念或数据已经成为信息领域的一个重要发展趋势。通过本课程的学习,使学生掌握计算机图形学的基本原理和基本方法,理解图形绘制的基本算法,学会初步图形程序设计。 英文简介: Computer Graphics is the subject which concerned with how computer builds, processes and shows graphics. Its importance has been shown in people’s more and more intensively need for harmony human-machine interface. Graphics user interface has become an important part of software. It is a significant trend to show abstract conception or data in graphics way. Through the learning of this course, students could master Computer Graphics’basic theories and methods,understand graphics basic algorithms and learn how to design basic graphics program. 三、课程性质与教学目的 《计算机图形学》是信息与计算科学专业的一门主要专业课。通过本课程的学习,使学生掌握基本的二、三维的图形的计算机绘制方法,理解光栅图形生成基本算法、几何造型技术、真实感图形生成、图形标准与图形变换等概念和知识。学会图形程序设计的基本方法,为图形算法的设计、图形软件的开发打下基础。 四、教学内容及要求 第一章绪论 (一)目的与要求 1.掌握计算机图形学的基本概念; 2.了解计算机图形学的发展、应用; 3.掌握图形系统的组成。

计算机图形学课程总结教材

计算机图形学报告 前言 计算机图形学(Computer Graphics,简称CG)是一种使用数学算法将二维或三维图形转化为计算机显示器的栅格形式的科学。简单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。 其从狭义上是来说是一种研究基于物理定律、经验方法以及认知原理,使用各种数学算法处理二维或三维图形数据,生成可视数据表现的科学。广义上来看,计算机图形学不仅包含了从三维图形建模、绘制到动画的过程,同时也包括了对二维矢量图形以及图像视频融合处理的研究。由于计算机图形学在许多领域的成功运用,特别是在迅猛发展的动漫产业中,带来了可观的经济效益。另一方面,由于这些领域应用的推动,也给计算机图形学的发展提供了新的发展机遇与挑战。 计算机图形学的发展趋势包括以下几个方面: 1、与图形硬件的发展紧密结合,突破实时高真实感、高分辨率渲染的技术难点; 2、研究和谐自然的三维模型建模方法; 3、利用日益增长的计算性能,实现具有高度物理真实的动态仿真; 4、研究多种高精度数据获取与处理技术,增强图形技术的表现; 5、计算机图形学与图像视频处理技术的结合; 6、从追求绝对的真实感向追求与强调图形的表意性转变。 1、三维物体的表示 计算机图形学的核心技术之一就是三维造型三维物体种类繁多、千变万化,如树、花、云、石、水、砖、木板、橡胶、纸、大理石、钢、玻璃、塑料和布等等。因此,不存在描述具有上述各种不同物质所有特征的统一方法。为了用计算机生成景物的真实感图形,就需要研究能精确描述物体特征的表示方法。根据三维物体的特征,可将三维物体分为规则物体和非规则物体两类。 三维实体表示方法通常分为两大类:边界表示和空间分割表示,尽管并非所有的表示都能完全属于这两类范畴中的某一类。边界表示(B-reps)用一组曲面来描述三维物体,这些曲面将物体分为内部和外部。边界表示的典型例子是多边形平面片和样条曲面。空间分割表示(Space-Partitioning)用来描述物体内部性质,将包含一物体的空间区域分割为一组小的、非重叠的、连续实体(通常是立方体)。三维物体的一般空间分割描述是八叉树表示。本章主要介绍三维物体的各种表示方法及其特点。

计算机图形学必考知识点

Phong Lighting 该模型计算效率高、与物理事实足够接近。Phong模型利用4个向量计算表面任一点的颜色值,考虑了光线和材质之间的三种相互作用:环境光反射、漫反射和镜面反射。Phong模型使用公式:I s=K s L s cosαΦα:高光系数。计算方面的优势:把r和v归一化为单位向量,利用点积计算镜面反射分量:I s=K s L s max((r,v)α,0),还可增加距离衰减因子。 在Gouraud着色这种明暗绘制方法中,对公用一个顶点的多边形的法向量取平均值,把归一化的平均值定义为该顶点的法向量,Gouraud着色对顶点的明暗值进行插值。Phong着色是在多边形内对法向量进行插值。Phong着色要求把光照模型应用到每个片元上,也被称为片元的着色。 颜色模型RGB XYZ HSV RGB:RGB颜色模式已经成为现代图形系统的标准,使用RGB加色模型的RGB三原色系统中,红绿蓝图像在概念上有各自的缓存,每个像素都分别有三个分量。任意色光F都可表示为F=r [ R ] + g [ G ] + b [ B ]。RGB颜色立方体中沿着一个坐标轴方向的距离代表了颜色中相应原色的分量,原点(黑)到体对角线顶点(白)为不同亮度的灰色 XYZ:在RGB 系统基础上,改用三个假想的原色X、Y、Z建立了一个新的色度系统, 将它匹配等能光谱的三刺激值,该系统称为视场XYZ色度系统,在XYZ空间中不能直观地评价颜色。 HSV是一种将RGB中的点在圆柱坐标系中的表示法,H色相S饱和度V明度,中心轴为灰色底黑顶白,绕轴角度为H,到该轴距离为S,沿轴高度为S。 RGB优点:笛卡尔坐标系,线性,基于硬件(易转换),基于三刺激值,缺点:难以指定命名颜色,不能覆盖所有颜色范围,不一致。 HSV优点:易于转换成RGB,直观指定颜色,’缺点:非线性,不能覆盖所有颜色范围,不一致 XYZ:覆盖所有颜色范围,基于人眼的三刺激值,线性,包含所有空间,缺点:不一致 交互式计算机程序员模型 (应用模型<->应用程序<->图形库)->(图形系统<->显示屏).应用程序和图形系统之间的接口可以通过图形库的一组函数来指定,这和接口的规范称为应用程序编程人员接口(API),软件驱动程序负责解释API的输出并把这些数据转换为能被特定硬件识别的形式。API提供的功能应该同程序员用来确定图像的概念模型相匹配。建立复杂的交互式模型,首先要从基本对象开始。良好的交互式程序需包含下述特性:平滑的显示效果。使用交互设备控制屏幕上图像的显示。能使用各种方法输入信息和显示信息。界面友好易于使用和学习。对用户的操作具有反馈功能。对用户的误操作具有容忍性。Opengl并不直接支持交互,窗口和输入函数并没有包含在API中。 简单光线跟踪、迭代光线跟踪 光线跟踪是一种真实感地显示物体的方法,该方法由Appel在1968年提出。光线跟踪方法沿着到达视点的光线的相反方向跟踪,经过屏幕上每一象素,找出与视线所交的物体表面点P0,并继续跟踪,找出影响P0点光强的所有的光源,从而算出P0点上精确的光照强度。光线跟踪器最适合于绘制具有高反射属性表面的场景。优缺点:原理简单,便于实现,能生成各种逼真的视觉效果,但计算量开销大,终止条件:光线与光源相交光线超出视线范围,达到最大递归层次。一般有三种:1)相交表面为理想漫射面,跟踪结束。2)相交表面为理想镜面,光线沿镜面反射方向继续跟踪。3)相交表面为规则透射面,光线沿规则透射方向继续跟踪。 描述光线跟踪简单方法是递归,即通过一个递归函数跟踪一条光线,其反射光想和折射光线再调用此函数本身,递归函数用来跟踪一条光线,该光线由一个点和一个方向确定,函数返回与光线相交的第一个对象表面的明暗值。递归函数会调用函数计算指定的光线与最近对象表面的交点位置。 图形学算法加速技术BVH, GRID, BSP, OCTree 加速技术:判定光线与场景中景物表面的相对位置关系,避免光线与实际不相交的景物表面的求交运算。加速器技术分为以下两种:Bounding Volume Hierarchy 简写BVH,即包围盒层次技术,是一种基于“物体”的场景管理技术,广泛应用于碰撞检测、射线相交测试之类的场合。BVH的数据结构其实就是一棵二叉树(Binary Tree)。它有两种节点(Node)类型:Interior Node 和Leaf Node。前者也是非叶子节点,即如果一个Node不是Leaf Node,它必定是Interior Node。Leaf Node 是最终存放物体/们的地方,而Interior Node存放着代表该划分(Partition)的包围盒信息,下面还有两个子树有待遍历。使用BVH需要考虑两个阶段的工作:构建(Build)和遍历(Traversal)。另一种是景物空间分割技术,包括BSP tree,KD tree Octree Grid BSP:二叉空间区分树 OCTree:划分二维平面空间无限四等分 Z-buffer算法 算法描述:1、帧缓冲器中的颜色设置为背景颜色2、z缓冲器中的z值设置成最小值(离视点最远)3、以任意顺序扫描各多边形a) 对于多边形中的每一个采样点,计算其深度值z(x,y) b) 比较z(x, y)与z缓冲器中已有的值zbuffer(x,y)如果z(x, y) >zbuffer(x, y),那么计算该像素(x, y)的光亮值属性并写入帧缓冲器更新z缓冲器zbuffer(x, y)=z(x, y) Z-buffer算法是使用广泛的隐藏面消除算法思想为保留每条投影线从COP到已绘制最近点距离,在投影后绘制多边形时更新这个信息。存储必要的深度信息放在Z缓存中,深度大于Z缓存中已有的深度值,对应投影线上已绘制的多边形距离观察者更近,故忽略该当前多边形颜色,深度小于Z缓存中的已有深度值,用这个多边形的颜色替换缓存中的颜色,并更新Z缓存的深度值。 void zBuffer() {int x, y; for (y = 0; y < YMAX; y++) for (x = 0; x < XMAX; x++) { WritePixel (x, y, BACKGROUND_VALUE); WriteZ (x, y, 1);} for each polygon { for each pixel in polygon’s projection { //plane equation doubl pz = Z-value at pixel (x, y); if (pz < ReadZ (x, y)) { // New point is closer to front of view WritePixel (x, y, color at pixel (x, y)) WriteZ (x, y, pz);}}}} 优点:算法复杂度只会随着场景的复杂度线性增加、无须排序、适合于并行实现 缺点:z缓冲器需要占用大量存储单元、深度采样与量化带来走样现象、难以处理透明物体 着色器编程方法vert. frag 着色器初始化:1、将着色器读入内存2、创建一个程序对象3、创建着色器对象4、把着色器对象绑定到程序对象5、编译着色器6、将所有的程序连接起来7、选择当前的程序对象8、把应用程序和着色器之间的uniform变量及attribute变量关联起来。 Vertex Shader:实现了一种通用的可编程方法操作顶点,输入主要有:1、属性、2、使用的常量数据3、被Uniforms使用的特殊类型4、顶点着色器编程源码。输入叫做varying变量。被使用在传统的基于顶点的操作,例如位移矩阵、计算光照方程、产生贴图坐标等。Fragment shader:计算每个像素的颜色和其他属性,实现了一种作用于片段的通用可编程方法,对光栅化阶段产生的每个片段进行操作。输入:Varying 变量、Uniforms-用于片元着色器的常量,Samples-用于呈现纹理、编程代码。输出:内建变量。 观察变换 建模变换是把对象从对象标架变换到世界标架 观察变换把世界坐标变换成照相机坐标。VC是与物理设备无关的,用于设置观察窗口观察和描述用户感兴趣的区域内部分对象,观察坐标系采用左手直角坐标系,可在用户坐标系中的任何位置、任何方向定义。其中有一坐标轴与观察方向重合同向并与观察平面垂直。观察变换是指将对象描述从世界坐标系变换到观察坐标系的过程。(1):平移观察坐标系的坐标原点,与世界坐标系的原点重合,(2):将x e,y e轴分别旋转(-θ)角与x w、y w轴重合。 规范化设备坐标系 规范化设备坐标系是与具体的物理设备无关的一种坐标系,用于定义视区,描述来自世界坐标系窗口内对象的图形。 光线与隐式表面求交 将一个对象表面定义为f(x,y,z)=f(p)=0,来自P0,方向为d的光线用参数的形式表示为P(t)=P0+td. 交点位置处参数t的值满足:f(P0+td)=0,若f是一个代数曲面,则f是形式为X i Y j Z k的多项式之和,求交就转化为寻求多项式所有根的问题,满足的情况一:二次曲面,情况二:品面求交,将光线方程带入平面方程:p*n+c=0可得到一个只需做一次除法的标量方程p=p0+td。可通过计算得到交点的参数t的值:t=(p0*n+c)/(n*d). 几何变换T R S矩阵表示 三维平移T 三维缩放S旋转绕z轴Rz( ) 100dx 010dy 001dz 0001 Sx000 0Sy00 00Sz0 0001 cos-sin00 sin cos00 0010 0001 θθ θθ 旋转绕x轴Rx(θ) 旋转绕y轴Ry(θ) 1000 0cos-sin0 0sin cos0 0001 θθ θθ cos0sin0 0100 -sin0cos0 0001 θθ θθ 曲线曲面 Bezier曲线性质:Bezier曲线的起点和终点分别是特征多边形的第一个顶点和最后一个顶点。曲线在起点和终点处的切线分别是特征多边形的第一条边和最后一条边,且切矢的模长分别为相应边长的n倍;(2)凸包性;(3)几何不变性(4)变差缩减性。端点插值。 均匀B样条曲线的性质包括:凸包性、局部性、B样条混合函数的权性、连续性、B样条多项式的次数不取决于控制函数。 G连续C连续 C0连续满足:C1连续满足: (1)(0) p(1)=(1)(0)(0) (1)(0) px qx py q qy pz qz == ???? ???? ???? ???? (1)(0) p'(1)=(1)'(0)(0) (1)(0) p x q x p y q q y p z q z == ???? ???? ???? ???? C0(G0)连续:曲线的三个分量在连接点必须对应相等 C1连续:参数方程和一阶导数都对应相等 G1连续:两曲线的切线向量成比例 三维空间中,曲线上某点的导数即是该点的切线,只要求两个曲线段连接点的导数成比例,不需要导 数相等,即p’(1)=aq’(0) 称为G1几何连续性。将该思想推广到高阶导数,就可得到C n和G n连续性。

计算机图形学 课程设计作品

《计算机图形学Visual c++版》考试作业报告 题目:计算机图形学图形画板 专业:推荐IT学长淘宝日用品店530213 班级:推荐IT学长淘宝日用品店530213 学号:推荐IT学长淘宝日用品店530213 姓名:推荐IT学长淘宝日用品店530213 指导教师:推荐IT学长淘宝日用品店530213 完成日期: 2015年12月2日

一、课程设计目的 本课程设计的目标就是要达到理论与实际应用相结合,提高学生设计图形及编写大型程序的能力,并培养基本的、良好的计算机图形学的技能。 设计中要求综合运用所学知识,上机解决一些与实际应用结合紧密的、规模较大的问题,通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握计算机图形学基本知识和算法设计的基本技能术,掌握分析、解决实际问题的能力。 通过这次设计,要求在加深对课程基本内容的理解。同时,在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。 二、设计内容推荐IT学长淘宝日用品店530213 设计一个图形画板,在这个图形画板中要实现: 1,画线功能,而且画的线要具备反走样功能。 2, 利用上面的画线功能实现画矩形,椭圆,多边形,并且可以对这些图形进行填充。 3,可以对选中区域的图形放大,缩小,平移,旋转等功能。 三、设计过程 程序预处理:包括头文件的加载,常量的定义以及全局变量的定义 #include "stdafx.h" #include "GraDesign.h" #include "GraDesignDoc.h" #include "GraDesignView.h" #include "math.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif //******自定义全局变量 int type = -1; CPoint point1; CPoint point2; CPoint temp[2];

计算机图形学课程设计报告

计算机图形学 课程设计报告 设计课题: 专业班级: 学号: 学生姓名: 指导教师: 设计时间:2018.12.06

中南林业科技大学涉外学院理工系计算机图形学课程设计任务书

指导教师:廖宁教研室主任: 2018年12月06 日注:本表下发学生一份,指导教师一份,栏目不够时请另附页。 课程设计任务书装订于设计计算说明书(或论文)封面之后,目录页之前。 目录 一.设计目的……………………………………………………………二.设计要求…………………………………………………………… 1.构建基础类…………………………………………………… 2.构建直线类…………………………………………………… 3.构建变换类…………………………………………………… 4.构建填充类…………………………………………………… 5.构建光照类……………………………………………………三.开发环境…………………………………………………………四.详细设计 五.源程序 六.程序运行效果图 七.总结

设计目的 ?培养对图形建模、变换、投影、消隐、光照原理的理解和应用。 ?培养图形类的编程能力。 ?培养计算机图形学应用软件开发的能力。 设计要求 深入研究计算机图形学的生成原理,设计算法实现具体的类。 1.构建基础类 实现CP2类绘制二维点;实现CP3类绘制三维点;实现CRGB 类处理RGB颜色;实现CVector类处理矢量。 2.构建直线类 实现CLine类绘制任意斜率的直线、实现CALine类绘制任意斜率的反走样直线、实现CCLine类绘制任意斜率的颜色渐变直线、实现

CACLine类绘制任意斜率的反走样颜色渐变直线。 3.构建变换类 实现CTransForm完成二维和三维图形变换。 4.构建填充类 实现CFill类使用有效边表算法填充多边形、实现CZBuffer类进行深度缓冲消隐,并使用Gouraud和Phong明暗处理填充图形面片。 5.构建光照类 实现CLight类设置点光源、实现CMaterial类设置物体材质、实现CLighting类对物体实施光照。 开发环境 Viusal C++ 6.0的MFC框架。 详细设计 1.利用函数Ellipse画出人物的脸,并用给脸填充颜色。再利 用Ara画出人物的嘴巴。CRect确定人物的眼睛,给眼睛填 充颜色。利用画笔画出人物的鼻子。 2.添加ddaline()成员函数,编写自定义的成员函数ddaline ()程序,编写OnDraw()函数,画出人物的脚和脚趾。 3.添加星星star()成员函数,编写自定义的成员函数star() 程序,确定五角星的位置、大小和颜色。

相关主题