计算机图形学复习资料

计算机图形学复习资料
计算机图形学复习资料

计算机图形学复习指导

一、考试大纲

要求掌握计算机图形学和图形系统所必须的基本原理,其主要内容包括:(一)计算机图形学和图形系统基本知识

计算机图形学研究对象及应用领域;图形系统的硬软件及图形标推接口。(二)二维基本图形生成算法

直线和二次曲线生成的常用算法;字符和区域填充的实现方法。

(三)图形的剪裁和几何变换

窗口视图变换;二维图形的裁剪的原理与方法;二维和三维图形的各种几何变换及其表示。

(四)三维物体的表示方法与输出显示处理

各种不同类型曲面的参数表示;实体的定义、性质及各种几何表示方法;投影变换原理与实现;观察空间的定义和转换;三维裁剪。

(五)常用的光学模型及其算法实现

(六)消隐显示和阴影生成等实现真实感图形的常用技术

二、复习指南

(一)计算机图形学和图形系统基本知识

1.计算机图形学研究对象及应用领域

2.图形硬件设备

3.图形软件系统

4.图形标准接口

(二)二维图形生成

1.直线的生成算法

(1)生成直线的常用算法---逐点比较法、数字微分(DDA)法和Bresenham 算法。

(2)直线属性——线型、线宽和线色。

2.曲线的生成算法

(1)二次曲线的生成算法---圆弧的逐点比较插补法、圆/椭圆弧的角度数字微分(DDA)法、Bresenham 画圆算法和参数拟合法。

(2)自由曲线的设计---抛物线参数样条曲线、Hermite 曲线、三次参数样条曲线、Bezier 曲线和B 样条曲线。

3.字符

(1)字符编码---ASCII 码和汉字国标码。

(2)矢量字符的存储与显示。

(3)点阵字符的存储与显示。

4.区域填充

(1)种子填充算法。

(2)扫描转换填充算法。

(3)区域填充属性---式样、颜色和图案。

(三)图形的剪裁和几何变换

1.窗口视图变换

窗口区与视图区及其变换。

2.二维图形的裁剪

(1)二维图形的裁剪的策略及原理。

(2)二维线段的裁剪方法---矢量裁剪法、编码裁剪法和中点分割裁剪法。

(3)字符的裁剪---矢量裁剪、字符裁剪和字符串裁剪法。

(4)多边形的裁剪---逐边裁剪法和双边裁剪法。

3.二维图形的几何变换

(1)二维图形的几何变换的一般表示。

(2)二维图形的几何变换的齐次坐标表示---平移、比例、旋转、对称、错切及组合变换。

4.三维图形的几何变换

三维图形的几何变换---比例、平移、对称、旋转及组合变换。

(四)三维形体的表示和输出

1.曲面的参数表示

Coons 曲面,Bezier 曲面,B 样条曲面及曲面片的连接。

2.三维物体的几何表示方法

(1)物体的定义及性质。

(2)特征参数法。

(3)边界表示法。

(4)曲面离散近似表示。

(5)实体构造表示法。

(6)八叉树表示法。

3.投影变换

(1)投影与投影变换定义。

(2)投影变换的分类。

(3)透视投影。

(4)平行投影。

4.观察空间的定义和转换

(1)观察空间的定义。

(2)空间转换。

5.三维裁剪

三维裁剪。

(五)光学模型及其算法实现

(六)消隐显示和阴影生成技术

1.消隐显示技术

(1)深度缓存(Z-Buffer)算法。

(2)扫描线算法。

(3)多边形区域排序算法。

(4)列表优先算法。

2.阴影生成技术

(1)阴影扫描线算法。

(2)阴影多边形算法。

(3)阴影空间算法。

(4)阴影深度缓存算法。

(5)反走样阴影生成算法。

三、思考题

1.图形学和图形系统基本知识

(1)计算机图形显示器和绘图设备表示颜色的方法各是什么颜色系统?它们

之间的关系如何?

(2)简述帧缓存与显示器分辨率的关系。分辨率分别为640×480,

1280x1024,和2560×2048 的显示器各需要多少字节位平面数为24 的帧缓存?

(3)画直线的算法有哪几种?画圆弧的算法有哪几种?写个画带线宽的虚线的

程序。

(4)写一个画饼分图的程序,用不同的颜色填充各个区域。

2.二维图形变换和显示

(1)分别写出平移、旋转、缩放及其组合的变换矩阵。(第7章课后1、3题)

(2)如何用几何变换实现坐标系的变换?(第7章课后8题)

(3)试写出几种线裁剪算法;

(4)试写出几种多边形裁剪算法。

3.曲线、曲面和三维图形

(1)写出Bezier 曲线和面片的几种表达形式。

(2)写出B 样条的矩阵形式和调和函数。为什么使用非均匀有理B 样条?

(3)简述边界表示法(BREP)实体构造表示法(CSG).

(4)写出透视变换矩阵和各种投影(三视图、正轴测和斜投影)变换矩阵。

(5)观察空间有哪些参数?其作用是什么?写出从物体空间坐标系到观察空间

坐标系转换矩阵。

4.光学模型及其算法实现

5.消隐显示和阴影生成技术

(1)简述消隐算法的分类。

(2)简述深度缓存算法及其特点。

综合复习

一、选择

(1) 在透视投影中,主灭点的最多个数是:()

A 1;

B 2;

C 3;

D 4

(2) 在三维几何造型方法中,具有精确性的方法是:()

A特征表示 B 八叉树法

C CSG表示

D 单元分解表示

(3) 计算机显示设备一般使用的颜色模型是:()

A HSV

B RGB

C CMY

D 不在A,B,C中出现

(4)下列有关Bezier曲线性质的叙述语句中,错误的结论为:()

A Bezier曲线可用其特征折线集(多边形)来定义;

B Bezier曲线必须通过其特征折线集(多边形)的各个顶点;

C Bezier曲线两端点处的切线方向必须与起特征折线集(多边形)的相应两端线段走向一致;

D n次Bezier曲线,在端点处的r阶导数,不只与r个相邻点有关。(5)下述绕坐标原点旋转a角的坐标变换矩阵中()是错误。

| A B |

| C D |

A cos a

B sin a

C sin a

D cos a

(6)下面关于反走样的论述错误的是:()

A 提高分辨率

B 把象素当作平面区域进行采样

C 采用锥形滤波器进行加权区域采样

D 增强图象的显示亮度

(7)在下列叙述语句中,错误的论述为:()

A: 在图形文件系统中,点、线、圆等图形元素通常都用其几何特征参数来描述;

B: 在图形系统中,图形处理运算的精度不取决于显示器的分辨率;

C: 在光栅扫描图形显示器中,所有图形都按矢量直接描绘显示,不存在任何处理;

D: 在彩色图形显示器中,使用RGB颜色模型。

(8)在计算机图形的标准化论述中,下列是正确的结论有:()

A GKS、PHIGS都是国际标准;

B CGM、CGA都是国际标准;

C IGES、DXF都是国际标准;

D STEP不是国际标准。

(9)下列有关平面几何投影的叙述,错误的是:()

A)透视投影又可分为一点透视、二点透视、三点透视

B)斜投影又可分为等轴测、斜二测

C)正轴测又可分为等轴测、正二测、正三测

D)正视图又可分为主视图、侧视图、俯视图

(10) 在多边形面片数量很大时;消隐算法最快的应该是:()

A Z-Buffer

B 扫描线

C画家算法 D 不确定

(11)下列有关平面几何投影的叙述语句中,不正确的论述为:()

A)在平面几何投影中,若投影中心移到距离投影面无穷远处,则成为平行投影

B)透视投影与平行投影相比,视觉效果更有真实感,但是不能真实地反映物体的精确的尺寸和形状

C)透视投影变换中,一组平行线投影在与之平行的投影面上,可以产生灭点

D)在三维空间中的物体进行透视投影变换,可能产生三个主灭点

(12)以下关于图形变换的论述不正确的是()

A 平移变换不改变图形大小和形状,只改变图形位置;

B 拓扑关系不变的几何变换不改变图形的连接关系和平行关系;

C 旋转变换后各图形部分间的线性关系和角度关系不变,变换后直线的长度不

D 错切变换虽然可引起图形角度的改变,但不会发生图形畸变。

(13)下列有关平面几何投影的叙述语句中,错误的论述为:( )

A)在平面几何投影中,若投影中心移到距离投影面无穷远处,则成为平行投影;

B)透视投影与平行投影相比,视觉效果更有真实感,而且能真实地反映物体的精确的尺寸和形状;

C)透视投影变换中,一组平行线投影在与之平行的投影面上,可以产生灭点;

D)在三维空间中的物体进行透视投影变换,可能产生三个主灭点。

(14)下述用数值微分法(DDA)画斜率的绝对值小于1的直线的C语言子程序中哪一行有错?( )

Void drawLineWithDDA(int x1, int y1, int x2, int y2, int color)

{

A ) int x, y;

B ) float k = (float)(y2-y1)(x2-x1);

C ) for(x=x1,y=y1;x<=x2;x++)

{

drawPixel(x,y,color);

}

D ) y+=k;

}

}

(15) 分辨率为1024*1024的显示器,其位平面数为24,则帧缓存的字节数应为: ( )

A 3M

B B 2MB

C 1MB

D 512KB

二、判断

(1)正则点集是有效实体。 ( )

(2)若参数曲线关于它的弧长参数是n C 的,则称该曲线是n

GC 的。( )

(3)HSV 模型是面向用户的,H 、S 、V 分别表示色彩、饱和度和明度。( )

(4)光栅扫描显示器中,电子束按照固定的扫描线和扫描顺序从右到左、自下而上进

行扫描。( )

(4)n 次Bezier 曲线可以表示成n 个控制顶点的加权和。( )

(5)DDA (微分方程法)是Bresenham 算法的改进。( )

(6)区域填充算法要求区域是连通的。( )

(7)齐次坐标系不能表达图形中的无穷远点。( )

(8) 观察平面由法向和其上的一点唯一确定。( )

(9) 欧拉公式

v – e + f = 2

也适用于三维形体中的相关信息描述。( )

(10)Bezier 曲线和B 样条曲线都具有直线再生性。( )

(11)Bezier 曲线具有对称性质。( )

(12)Hermite 曲线、Bezier 曲线和B 样条曲线的表示形式不能相互转换。( )

(13)多边形扫描转换与区域填充对边界的要求是一样的。( )

(14) 空间分割表示法不能表示任何实体。( )

(15) 4连通区域一定是8连通区域。( )

三、填空

1、 边形的两种重要的表示方法是__________ 、 __________

2、 从视觉角度,颜色以色彩、__________和__________ 来描述。

3、 多边形有两种重要的表示方法:顶点表示和__________。

4、 裁剪的目的是为了使位于__________外的图形不显示出来,消隐的目的是为了使位于

______________后面的线、面不显示出来。

5、 平行投影根据 可以分为 投影和 投影。

6、 表示形体通常有三种模型,即 、 和 。

三视图分为 、 、 。

7、 反混淆的三种方法为 、 和 。

8、 将多边形外部一点A 与某一点B 用线段连接,若此线段与多边形边界相交的次数为 ?

?????????, 则点B 在多边形外部。若此线段与多边形边界相交的

次数为??????????, 则点B 在多边形内部。

9、 直线的属性主要包括__________、______________和_______________。

10、 在线段AB 的区域编码裁剪算法中,如A 、B 两点的码 ,则该线段位

于窗口内;如A 、B 两点的码 ,则该线段在窗口外。

四、简答与证明

1、简述计算机图形学的研究内容和主要应用领域?简述计算机图形学的概念?

2、什么是观察坐标系?为什么要建立观察坐标系?

简述直线段裁剪的常用方法?直线生成的常用算法?简述扫描转换多边形的几种算

法?

3、CSG 表示的优点和缺点?简述空间位置枚举表示的优点和缺点?

4、什么是区域的4连通及8连通?

5、放缩变换具有可乘性,即:)

,(),(),(21211122y y x x y x y x s s s s S s s S s s S =? 证明???????????-=10

00101),(ref x x ref x y y sh sh y sh SH 6、试证明下述几何变换的矩阵运算具有互换性:1)当Sx=Sy 时,旋转和比例变换;

2)两个连续的平移变换 。

7、Bezier 曲线的缺点?B 样条曲线的性质?为什么通常都用三次参数方程来表示自由

曲线?

8、简述提高消隐算法效率的常用方法?请简要叙述 Z-Buffer 消隐算法的基本思想及

其优缺点。

五、计算题

1、投影中心点位O(0,0,0),投影平面为平行于平面XOY ,且Z=4。请写出此投影变换矩阵,

并求顶点A(6,15,12),B(30,20,10)和C(18,14,8)的三角形ABC 在该投影平面的投影。

2、 已知Bezier 曲线上的四个点分别为Q0(150,0),Q1(45,0),Q2(0,45),Q3(0,150),它们对应的

参数分别为0,1/3,2/3,1,反求三次Bezier 曲线的控制点。

3、二维图形A ,B 的位置如图所示,求A U* B ,A ∩* B ,A - * B 写出计算公式,并以图

示表示。(要求画图)

计算机图形学实验一

实验一二维基本图元的生成与填充 实验目的 1.了解并掌握二维基本图元的生成算法与填充算法。 2.实现直线生成的DDA算法、中点算法和Bresenham算法。 3.实现圆和椭圆生成的DDA和中点算法, 对几种算法的优缺点有感性认识。 二.实验内容和要求 1.选择自己熟悉的任何编程语言, 建议使用VC++。 2.创建良好的用户界面,包括菜单,参数输入区域和图形显示区域。 3.实现生成直线的DDA算法、中点算法和Bresenham算法。 4.实现圆弧生成的中点算法。 5.实现多边形生成的常用算法, 如扫描线算法,边缘填充算法。 6.实现一般连通区域的基于扫描线的种子填充算法。 7.将生成算法以菜单或按钮形式集成到用户界面上。 8.直线与圆的坐标参数可以用鼠标或键盘输入。 6. 可以实现任何情形的直线和圆的生成。 实验报告 1.用户界面的设计思想和框图。 2.各种实现算法的算法思想。 3.算法验证例子。 4.上交源程序。 直线生成程序设计的步骤如下: 为编程实现上述算法,本程序利用最基本的绘制元素(如点、直线等),绘制图形。如图1-1所示,为程序运行主界面,通过选择菜单及下拉菜单的各功能项分别完成各种对应算法的图形绘制。 图1-1 基本图形生成的程序运行界面 2.创建工程名称为“基本图形的生成”单文档应用程序框架 (1)启动VC,选择“文件”|“新建”菜单命令,并在弹出的新建对话框中单击“工程”标签。 (2)选择MFC AppWizard(exe),在“工程名称”编辑框中输入“基本图形的生成”作为工程名称,单击“确定”按钮,出现Step 1对话框。 (3)选择“单个文档”选项,单击“下一个”按钮,出现Step 2对话框。 (4)接受默认选项,单击“下一个”按钮,在出现的Step 3~Step 5对话框中,接受默认选项,单击“下一个”按钮。

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

一、填空题 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.常用的交互式绘图技术有、、和。

2011计算机图形学复习题

一、填空题(共10分,每空1分) 1、目前常用的PC 图形显示子系统主要由3个部件组成: 帧缓冲存储器、显示控制器、ROM BIOS 。 2、 图形的输入设备有 键盘、鼠标、光笔; 图形的显示设备有CRT 显示器、LCD 、投影仪。 3、形体的定义和图形的输入输出都是在一定的坐标系下进行的,通常这些坐标系分为:建模坐标系,用户坐标系,观察坐标系,规格化设备坐标系和 设备坐标系。 4、在多边形的扫描转换过程中,主要是通过确定穿越多边形区域的扫描线的覆盖区间来填充,而区域填充则是从 给定的位置 开始涂描直到 指定的边界条件 为止。 5、X 扫描线算法中,每次用一条扫描线进行填充,对一条扫描线填充的过程可分为4个步骤:(求交)、(排序)、(交点配对)、(区间填色)。 6、一个交互式计算机图形系统应具有 计算 、 存储 、 对话 、 输入 和 输出 等五个方面的功能。 7. 将三维物体变为二维图形的变换称为(投影变换),其有两种基本方式:(平行投影)、(透视投影)。 8、用一组型值点来指定曲线曲面的形状时,形状完全通过给定的型值点列,用该方法得到的曲线曲面称为曲线曲面的(拟和),而用控制点列来指定曲线曲面的形状时,得到的曲线曲面不一定通过控制点列,该方法称为曲线曲面的(逼近)。 9、对于基本几何变换,一般有平移、旋转、反射和错切等,这些基本几何变换都是相对于(坐标原点)和(坐标轴)进行的几何变换。 二、选择题(共20分,每题2分) 1.计算机图形学与计算机图象学的关系是( B )。 A )计算机图形学是基础,计算机图象学是其发展 B )不同的学科,研究对象和数学基础都不同,但它们之间也有可转换部分 C )同一学科在不同场合的不同称呼而已 D )完全不同的学科,两者毫不相干 2. 分辨率为2048×1024的显示器需要多少字节位平面数为32的帧缓存?( B ) A )64K B ; B )8MB ; C )32MB ; D )16MB 3.下列有关反走样的叙述,错误的是( A ) A )减少或克服图形失真的技术叫做反走样; B )提高分辨率是反走样的方法之一; C )半色调技术是利用多级光强提高视觉分辨率的技术; D )对于多灰度或多彩色显示器,图形的边缘可采用模糊技术而改善锯齿显示效果。 4.计算机绘图设备一般使用什么颜色模型?( A ) A )RG B ; B )CMY ; C )HSV ; D )HLS 5.使用下列二维图形变换矩阵,将产生变换的结果为( D ) ??002

计算机图形学总结

第一章绪论 计算机图形学的基本概念 计算机图形学:是研究怎样用数字计算机生成、处理和显示图形的一门学科。 图形:计算机图形学的研究对象。 构成图形的要素:几何要素——几何属性(点、线、面、体) 非几何要素——视觉属性(明暗、灰度、色彩、纹理、透明性、线型、线宽) 表示图形的方法:点阵表示;参数表示 研究内容 计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法,构成了计算机图形学的主要研究内容。 图形硬件、图形标准、图形交互技术、光栅图形生成算法、曲线曲面造型、实体造型、真实感图形计算与显示算法,以及科学计算可视化、计算机动画、自然景物仿真、虚拟现实等。 计算机图形学的应用 图形用户界面;计算机辅助设计与制造(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)掌握VC++绘图的一般步骤; (2)掌握OpenGL软件包的安装方法; (3)掌握OpenGL绘图的一般步骤; (4)掌握OpenGL的主要功能与基本语法。 二、实验内容 1、VC++绘图实验 (1)实验内容:以下是绘制金刚石图案。已给出VC++参考程序,但里面有部分错误,请改正,实现以下图案。 N=3 N=4

N=5 N=10 N=30

N=50 (2)参考程序 //自定义的一个类 //此代码可以放在视图类的实现文件(.cpp) 里class CP2 { public: CP2(); virtual ~CP2(); CP2(double,double); double x; double y; }; CP2::CP2() { this->x=0.0; this->y=0.0; } CP2::~CP2() { } CP2::CP2(double x0,double y0) { this->x=x0; this->y=y0; }

//视图类的一个成员函数,这个成员函数可以放在OnDraw函数里调用。 //在视图类的头文件(.h)里定义此函数 void Diamond(); //在视图类的实现文件(.cpp)里实现此函数 void CTestView::Diamond() { CP2 *P; int N; double R; R=300; N=10; P=new CP2[N]; CClientDC dc(this); CRect Rect; GetClientRect(&Rect); double theta; theta=2*PI/N; for(int i=0;i #include #include #include //定义输出窗口的大小 #define WINDOW_HEIGHT 300

计算机图形学期末考试试卷D卷

计算机图形学期末考试 试卷D卷 文稿归稿存档编号:[KKUY-KKIO69-OTM243-OLUI129-G00I-FDQS58-

计算机图形学期末考试试卷(D 卷 ) 一、 填空题(每空1分,共10分) 1. 图形的表示方法有两种: 和 。 2. 目前常用的两个事实图形软件标准是OpenGL 和 。 3. 多边形有两种表示方法: 和点阵表示法。 4. 二维图形基本几何变换包括平移、 、 等变换。 5. 投影可以分为 投影和 投影。 6. 描述一个物体需要描述其几何信息和 。 7. 在Z 缓冲器消隐算法中Z 缓冲器每个单元存储的信息是每一个像素点 的 。 二、 判断题(每小题1分,共10分,对的画√,错的画×) 1. 由三个顶点可以决定一段二次B 样条曲线,若三顶点共线时则所得到的 曲线褪化为一条直线段。( ) 2. DDA (微分方程法)是Bresenham 算法的改进。( ) 3. 插值得到的函数严格经过所给定的数据点,逼近是在某种意义上的最佳 近似。( ) 4. 齐次坐标提供了坐标系变换的有效方法,但仍然无法表示无穷远的点。 ( ) 5. 若相对于某点进行比例、旋转变换,首先需要将坐标原点平移至该点, 在新的坐标系下做比例或者旋转变换,然后将原点平移回去。( ) 6. Phong 算法的计算量要比Gouraud 算法小得多。 ( ) 7. 将某二维图形整体放大2倍,其变换矩阵可写为?? ?? ? ?????200010001。( ) 8. 在种子填充算法中所提到的八连通区域算法同时可填充四连通区域。 ( ) 9. 边缘填充算法中是将扫描线与多边形交点左方的所有像素取补。( )

计算机图形学复习题及答案

计算机图形学复习题及答 案 This manuscript was revised on November 28, 2020

中南大学现代远程教育课程考试模拟复习试题.及参考答案 计算机图形学 一、名词解释 1.图形 2.像素图 3.参数图 4.扫描线 5.构造实体几何表示法 6.投影 7.参数向量方程 8.自由曲线 9.曲线拟合 10.曲线插值 11.区域填充 12.扫描转换 二、判断正误(正确写T,错误写F) 1.存储颜色和亮度信息的相应存储器称为帧缓冲存储器,所存储的信息被称为位 图。() 2.光栅扫描显示器的屏幕分为m行扫描线,每行n个点,整个屏幕分为m╳n个点,其中每个点称为一个像 素。―――――――――――――――――――――() 3.点阵字符用一个位图来表示,位图中的0对应点亮的像素,用前景色绘制;位图中的1对应未点亮的像素,用背景色绘 制。――――――――――――――――-() 4.矢量字符表示法用(曲)线段记录字形的边缘轮廓线。―――――――――――() 5.将矢量字符旋转或放大时,显示的结果通常会变得粗糙难看,同样的变换不会改变点阵字符的显示效 果。―――――――――――――――――――――――――()

6.在光栅图形中,区域是由相连的像素组成的集合,这些像素具有相同的属性值或者它们位于某边界线的内 部。―――――――――――――――――――――――() 7.多边形的扫描变换算法不需要预先定义区域内部或边界的像素值。――――――() 8.齐次坐标表示法用n维向量表示一个n+1维向 量。―――――――――――――() 9.实体的边界由平面多边形或空间曲面片组成。―――――――――――――――() 10.平面多面体表面的平面多边形的边最多属于两个多边形,即它的表面具有二维流形的性 质。―――――――――――――――――――――――――――――――() 11.实体几何性质包括位置、长度和大小 等。―――――――――――――――――() 12.实体的拓扑关系表示实体之间的相邻、相离、方位、相交和包含等关系。―――() 13.实体的扫描表示法也称为推移表示法,该表示法用一个物体和该物体的一条移动轨迹来描述一个新的物 体。――――――――――――――――――――――――() 14.如果投影空间为平面,投影线为直线,则称该投影为平面几何投影。――――-() 15.平面几何投影分为两大类:透视投影和平行投影。――――――――――――- () 16.当投影中心到投影面的距离为有限值时,相应的投影为平行投 影。――――――() 17.当投影中心到投影面的距离为无穷大时,相应的投影即为透视投影。―――――()

西安电子科技大学计算机图形学重点总结,缩印必备!

反走样:在光栅显示器上显示图形时,直线段或图形边界或多或少会呈锯齿状。原因是图形信号是连续的,而在光栅显示系统中,用来表示图形的却是一个个离散的象素。这种用离散量表示连续量引起的失真现象称之为走样;用于减少或消除这种效果的技术称为反走样 反走样方法主要有:提高分辨率、区域采样和加权区域采样 提高分辨率:把显示器分辨率提高一倍,锯齿宽度也减小了一倍,所以显示出的直线段看起来就平直光滑了一些。这种反走样方法是以4倍的存储器代价和扫描转换时间获得的。因此,增加分辨率虽然简单,但是不经济的方法,而且它也只能减轻而不能消除锯齿问题。 区域采样方法:假定每个象素是一个具有一定面积的小区域,将直线段看作具有一定宽度的狭长矩形。当直线段与象素有交时,求出两者相交区域的面积,然后根据相交区域面积的大小确定该象素的亮度值。 加权区域采样:相交区域对象素亮度的贡献依赖于该区域与象素中心的距离。当直线经过该象素时,该象素的亮度F是在两者相交区域A′上对滤波器进行积分的积分值 刚体:平移和旋转的组合,保持线段的长度,保持角的大小,图形不变形,为刚体变化 仿射:旋转、平移、缩放的组合为仿射变换,平行边仍然平行,错切变换也为仿射变换 较高次数逼近的三种方法:1将y和z直接表示成x的显函数即y=f(x) z=g(x)2用一个形如f(x,y,z)=0的隐式方程的解来表示曲线3曲线的参数表示 前两方法缺点:1由一个x值不能得到多个y值;这一定义不是旋转不变的;描述具有与坐标轴垂直的切线的曲线是困难的2给定方程的解可能更多;曲线段做链接时,很难确定他们的切线方向在连接点上是否相等 参数表示为什么要选择三做参数:1低于三次的函数控制曲线形状时不够灵活,高于三次的曲线会增加不必要的摆动其增加计算量2三次参数曲线是三维空间中次数最低的非平面曲线3定义高次曲线需要更多条件,这样在交互生成时会造成曲线的摆动而难以控制 G0连续:两条曲线段拼接成一条曲线 G1连续:两条曲线段拼接点处切向量方向相同。若相等(方向、大小)-C1 Gn连续:两条曲线段拼接点处切向量的阶导数方向相同。n阶导数相等-Cn B样条曲线优势:1四点加权求和,调和函数非负且和为1,具有凸壳特性2可证明Qi和Qi+1在连接点处连续3曲线段三次函数,所以整个曲线具有连续4凸壳的对曲线裁剪有用 中点生成算法: TBRL中点生成算法:

计算机图形学期末考试题库

一、单项选择题 1. 计算机图形显示器一般使用什么颜色模型?(B) A)RGB;B) CMY;C) H SV ;D) HLS 2. 哪一个不是国际标准化组织( ISO)批准的图形标准?(D) A)GKS;B) PHIGS;C) C GM ;D) DXF 3.下述用数值微分法(DDA画斜率的绝对值小于1的直线的C语言子程序中哪一行有错? (A) Void drawLineWithDDA(int x1, int y1, int x2, int y2, int color) { A) int x, y; B ) float k = (float)(y2-y1)(x2-x1); C ) for(x=x1,y=y1;x<=x2;x++) { drawPixel(x,y,color); } D ) y+=k; } } 4. 下述绕坐标原点旋转a 角的坐标变换矩阵中哪一项是错误的?(B) | A B | | C D | A) cos a; B)sin a; C)sin a; D)cos a 5. 下述哪一条边不是非均匀有理B样条(NURBS的优点?(D) B)对于间距不等的数据点,用NURBS以合的曲线比用均匀B样条拟合的曲线更光滑 C)NURB醍供的权控制方法比用控制点更能有效的控制曲线的形状 D)使用NURB呦以提高对曲面的显示效率 A) NURBSL均匀B样条能表示更多的曲面

6. 透视投影中主灭点最多可以有几个?(D) A)0; B)1; C)2; D)3 7. 在用扫描线法进行点与多边形之间的包含性检测时,下述哪一个操作不正确?(D) A)当射线与多边形交于某顶点时且该点的两个邻边在射线的一侧时,计数0次 B)当射线与多边形交于某顶点时且该点的两个邻边在射线的一侧时,计数2次 C)当射线与多边形交于某顶点时且该点的两个邻边在射线的两侧时,计数1次 D)当射线与多边形的某边重合时,计数1次 &在简单光反射模型中,由物体表面上点反射到视点的光强下述哪几项之和?(C)(1)环境光的反射光强;(2)理想漫反射光强;(3)镜面反射光强;(4)物体间的反射光强。 A(1)和(2) B)(1)和(3) C)(1)(2)和(3) D)(1)(2 )(3 )和(4 ) 9. 下面关于NURBS的论述,哪个是错误的? ( B) A. 可通过控制顶点和权因子来改变形状; B. 仅具有仿射不变性,但不具有透射不变性; C. 非有理B样条、有理及非有理Bezier曲线、曲面是NURBS的特例; D. 可表示标准解析形状和自由曲线、曲面; 10. 下述关于Bezier 曲线P1(t), P2(t)t [0,1]的论述,哪个是错误的?() A. P1(1)= P2(0) = P,在P处P1(1), P2(0)的切矢量方向相同,大小相等, 则 P1(t), P2(t)在P处具有G1连续;

计算机图形学复习

1.图像-和图像的定义 答:图形是指由点、线、面、体等几何要素和明暗、灰度(亮度)、色彩等非几何要素构成的,从现实世界中抽象出来的带有灰度、色彩及形状的图或形。 图像是指以点阵图形式呈现,在计算机中以具有颜色信息的点阵来表示的图形,它更强调整体形式,描述一个个点—像素(pixel)或图像单元(pels),记录点及它的灰度或色彩。 2.什么是刷新率 答:显示器的扫描频率,也叫刷新率。 3.什么是分辨率 答:就是屏幕图像的精密度,是指显示器所能显示的像素的多少。由于屏幕上的点、线和面都是由像素组成的,显示器可显示的像素越多,画面就越精细,同样的屏幕区域内能显示的信息也越多,所以分辨率是个非常重要的性能指标之一。可以把整个图像想象成是一个大型的棋盘,而分辨率的表示方式就是所有经线和纬线交叉点的数目。 4.什么是光栅化 确定最佳逼近图形的像素集合,并用指定属性写像素的过程称为图形光栅化(或图形的扫描转换). 5.基本显示设备的成像原理 ●向量型:作画机构随着图形输出形状而移动并成像 ●光栅扫描型:作画机构按光栅矩阵扫描整张图面,并按输出内容对图面成像。 6.LCD和CRT的构造 CRT由四部分组成:电子枪、聚焦系统、偏转系统和荧光屏,这四部分都在真空管内。电子枪由灯丝、阴极和控制栅极组成。 7.openGL 和D3D在代码中实施时所要的步骤 ●OpenGL库是在硬件支持标准基础上,提供的一个硬件图形加速软件库,让应用程 序能够高效地访问硬件的功能。 OpenGL流水线架构 8.走样和反走样,剪裁,消隐 裁剪:确定一个图形的哪些部分在窗口内,必须显示,那些部分落在窗口之外,不用显示的过程.走样:对图形进行光栅化时,由于显示器的空间分辨率有限,对于非水平、垂直、+45O的直线,因像素逼近误差,使所画图形产生畸变的显现称为走样 反走样:用于减少或消除走样的技术称为反走样。 消隐:计算机为了反映真实的图形,把隐藏的部分从图中消除。 9.图形标准,MFC的应用

计算机图形学心得体会

计算机图形学心得体会 姓名: 学号: 201203284 班级: 计科11202 序号: 31 院系: 计算机科学学院

通过一个学期的学习,经过老师细心的讲解,我对图形学这门课有了基础的认识,从您的课上我学到了不少知识,基本上对图形学有了一个大体的认识。上课的时候,您的PPT做的栩栩如生,创意新颖的FLASH就吸引了我的眼球,再加上您那详细生动的讲解,就让我对这门课产生了浓厚的兴趣,随着一节一节课的教学,您的讲课更加深深地吸引了我,并且随着对这门课越来越深入的了解更促使我产生了学好这门的欲望。您教会了我们怎们做基本知识,还教了我们不少的算法。听您的课可以说是听得津津有味。以下就是我对计算机图形学这门课的认识。 一、图形通常由点、线、面、体等几何元素和灰度、色彩、线型、线宽等非几何属性组成。从处理技术上来看图形主要分为两类一类是基于线条信息表示的如工程图、等高线地图、曲面的线框图等另一类是明暗图也就是通常所说的真实感图形。计算机图形学一个主要的目的就是要利用计算机产生令人赏心悦目的真实感图形。为此必须建立图形所描述的场景的几何表示再用某种光照模型计算在假想的光源、纹理、材质属性下的光照明效果。所以计算机图形学与另一门学科计算机辅助几何设计有着密切的关系。事实上图形学也把可以表示几何场景的曲线曲面造型技术和实体造型技术作为其主要的研究内容。同时真实感图形计算的结果是以数字图像的方式提供的计算机图形学也就和图像处理有着密切的关系。 二、计算机图形学的研究内容非常广泛如图形硬件、图形标准、图形交互技术、光栅图形生成算法、曲线曲面造型、实体造型、真实感图形计算与显示算法、非真实感绘制以及科学计算可视化、计算机动画、自然景物仿真、虚拟现实等。1990年的第11届亚洲运动会上首次采用了计算机三维动画技术来制作有关的电视节目片头。继而以3D Studio 为代表的三维动画微机软什和以Photostyler、Photoshop等为代表的微机二维平面设计软件的普及对我国计算机动画技术的应用起到了推波助谰的作用。计算机动画的应用领域十分宽广除了用来制作影视作品外在科学研究、视觉模拟、电子游戏、工业设计、教学训练、写真仿真、过程控制、平面绘画、机械设计等许多方面都有重要应用如军事战术模拟。 三、科学计算可视化它将科学计算过程中及计算结果的数据转换为几何

计算机图形学实验三报告

计算机科学与通信工程学院 实验报告 课程计算机图形学 实验题目二维图形变换 学生姓名 学号 专业班级 指导教师 日期

成绩评定表

二维图形变换 1. 实验内容 完成对北极星图案的缩放、平移、旋转、对称等二维变换。 提示:首先要建好图示的北极星图案的数据模型(顶点表、边表)。另外,可重复调用“清屏”和“暂停”等函数,使整个变换过程具有动态效果。 2. 实验环境 软硬件运行环境:Windows XP 开发工具:visual studio 2008 3. 问题分析

4. 算法设计 程序框架: //DiamondView.h class CDiamondView : public CView { …… public: //参数输入和提示对话框 void Polaris();//北极星 …… }; //DiamondView.cpp void CDiamondView::OnMenuDiamond() { IsCutting = FALSE; if(dlgDiamond.DoModal()==IDOK) DrawDiamond(dlgDiamond.m_nVertex,dlgDiamond.

m_nRadius,100);//调用绘制金刚石的函数 } //北极星 void CDiamondView::Polaris() {......} 5. 源代码 //北极星 void hzbjx(CDC* pDC,long x[18],long y[18]) { CPen newPen1,*oldPen; newPen1.CreatePen(PS_SOLID,2,RGB(255,0,0)); oldPen = pDC->SelectObject(&newPen1); POINT vertex1[11]={{x[1],y[1]},{x[2],y[2]},{x[3],y[3]},{x[4],y[4]},{x[5],y[5]},{x[3],y[3]},{x[1],y[1]}, {x[6],y[6]},{x[3],y[3]},{x[7],y[7]},{x[5],y[5]}}; pDC->Polyline(vertex1, 11); newPen1.DeleteObject(); newPen1.CreatePen(PS_SOLID, 2, RGB(0,255,0)); oldPen = pDC->SelectObject(&newPen1); POINT vertex2[5]={{x[6],y[6]},{x[8],y[8]},{x[9],y[9]},{x[3],y[3]},{x[8],y[8]}}; pDC->Polyline(vertex2, 5); POINT vertex3[5]={{x[4],y[4]},{x[10],y[10]},{x[11],y[11]},{x[3],y[3]},{x[10],y[10]}}; pDC->Polyline(vertex3, 5);

最新计算机图形学期末考试试卷

最新计算机图形学期末考试试卷 一、判断题(本大题共 10 小题,每小题 1 分,共 10 分) 1. 计算机图形生成的基本单位是线段. ( F ) 2. 构成图形的要素除了点、线、面、体等几何要素外,还应该包括灰度、色彩、线型、 线宽等非几何要素. ( N ) 3. 在齐次坐标系中,若用矩阵来表示各种运算,则比例和旋转变换是矩阵F 乘法运算, 而平移变换是矩阵加法运算. ( F ) 4. Z-Buffer 消隐算法有利于硬件实现,并且不需要排序. ( N ) 5. 二次Bezier 曲线和二次B 样条曲线都通过控制多边形的首末端点. ( F ) 6. 一个向量的齐次坐标的表示形式是唯一的. ( F ) 7. 计算机图形技术是随着图形硬件设备的发展而发展起来的. ( N ) 8. Phong 算法的计算量要比Gouraud 算法小得多. ( F ) 9. 将某二维图形整体放大2倍,其变换矩阵可写为. ( F ) 10. 图形软件标准是为提高图形软件的易用性而提出的. ( F ) 二、填空题(本大题共 10 空,每空 1 分,共 10 分) 1. 在多边形填充过程中,常采用、 左闭右开 和 下闭上开 的原则 对边界像素进行处理. 2. 基本几何变换指 平移 、 比例 和 旋转 三种变换. 3. 屏幕上最小的发光单元叫作 像素 ,它的多少叫做 分辨率 . 4. ISO 批准的第一个图形软件标准是 GKS ,进入20世纪90年代后,存 在的事实上的图形软件标准主要是 OpenGL 和 Direct x . ?? ?? ? ?????200010001

5.图形的表示方法有两种:参数法和点阵法. 6.多边形的表示方法有顶点表示法和点阵表示法两种. 7.计算机三维模型的描述有线框模型、表面模型和实体 模型. 8.颜色包含3个要素:色调、饱和度和亮度 . 三、简答题(本大题共5 小题,每小题5 分,共25 分) 1.计算机图形学研究的主要内容是什么? 2.什么是齐次坐标?齐次空间点 P(X、Y、W) 对应的笛卡尔坐标是什么? 3.帧缓存的容量与什么有关?假定一个光栅扫描系统,分辨率800×600,要求可显示颜色256种,请问帧缓存的容量需要多少字节? 4.什么是走样?什么是反走样?常用的反走样技术有哪些? 5.简单光照模型的反射光由哪几部分组成,光照计算时有哪两种明暗处理技术?

计算机图形学复习重点

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:交互式图形系统的基本交换任务包括:定位,选择,文字输入,数值输出。定位任务是向应用程序指定一个点的坐标,定位中考虑的基本问题:坐标系统;分辨率;网格;反馈。选择任务是指从一个被选集中挑选出一个元素来。在作图系统中,操作命令、属性值、物种种类、物体等都可能是被选集。被选集可根据其元素的变化程度分为可变集和固定集。可变集的选择技术:指名和拾取。固定集的选择技术:指名技术、功能键、菜单技术、模式识

计算机图形学必考知识点

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连续性。

相关文档
最新文档