计算机图形学文档格式.docx

上传人:b****6 文档编号:20202613 上传时间:2023-01-18 格式:DOCX 页数:17 大小:333.81KB
下载 相关 举报
计算机图形学文档格式.docx_第1页
第1页 / 共17页
计算机图形学文档格式.docx_第2页
第2页 / 共17页
计算机图形学文档格式.docx_第3页
第3页 / 共17页
计算机图形学文档格式.docx_第4页
第4页 / 共17页
计算机图形学文档格式.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

计算机图形学文档格式.docx

《计算机图形学文档格式.docx》由会员分享,可在线阅读,更多相关《计算机图形学文档格式.docx(17页珍藏版)》请在冰豆网上搜索。

计算机图形学文档格式.docx

它是为了让我们能够在每个祯缓存单元的位数不增加,却能具有在很大范围内挑颜色的能力。

此时由祯缓存读出来的值并不是相应像素的值,而是彩色表中的一个编号。

按照这个编号在彩色表中取出的数才是该像素的彩色值。

5光栅扫描显示器结构与工作原理。

其一,由计算机执行相应的图形应用程序,图像生成系统接受指令将图形的矢量表示转换成像素表示,再将像素值存入显示存储器;

其二,图像生成系统直接把图形输入设备(摄像机、扫描仪等)输入的图形图像直接或经过主存储器间接地存放到显示存储器中。

显示控制器生成水平和垂直同步扫描信号送到监视器,使CRT电子束进行水平扫描和垂直扫描形成光栅;

另一方面又根据电子束在屏幕上的行、列位置,不断地读出显示存储器中对应位置的像素值。

利用彩色表将读出的像素值转换成R、G、B三原色的亮度值,来控制CRT的R、G、B电子束,在屏幕对应点生成需要的像素颜色。

为了使屏幕上显示的画面不闪烁,

(2)(3)应反复进行,一般要求5060帧/秒。

6为什么要制订图形软件标准?

举例说明它的分类。

制定图形软件标准的目的在于使图形软件能够在不同的计算机和图形设备之间进行移植,以便提高图形软件的利用率,降低开发成本,缩短研制周期,使图形软件向着通用、高级与设备无关的方向发展。

可以分为两类:

.数据接口标准(CGM,PHIGS).子程序接口标准(GKS,CGI)第三章基本图形生成算法1Bresenham直线生成算法原理。

它与DDA算法相比,有何改进?

算法思想:

根据直线的斜率确定选择X或者Y方向作为计长方向,在此方向上每次递增一个单位步长(或者一个像素单位),另一个方向上是否同时产生一个单位增量由一个计算量很小的判别式来判断。

DDA为增量算法。

它根据每一次增长时在另一轴上的增长计算下一个点应该画在哪里。

Bresenham算法与它相比,由于全部采用了整数计算,使算法效率比起DD有大大提高,程序中只含有+-和*2的计算,便于使用计算机内硬件实现。

2比较几种常用画圆弧算法的原理和效率。

1)Bresenham算法思想其基本方法是从一个起点出发,利用判别式选择下一个显示点。

判别式的值通过简单计算获得,其符号用作判断。

只计算出1/8圆的点的位置,就可以画出整个圆来,效率高。

2)正负法:

首先区分不同象限的圆弧,然后,选定圆弧起点后,在输出圆弧过程中,根据当前点位置与理想圆弧的关系和所在象限,决定下一次的走向每次只在X或Y方向走步取点,这样一点一点逼近圆弧形状。

在整个计算过程中,只使用了+-和*2运算,提高了硬件使用率。

比起Bre算法,它更为简单。

但生成的点数要比Bre多。

3简述两种字符生成方法。

有两种基本的字符生成技术:

一种是在计算机中用笔划(矢量)方式来表示,然后通过扫描转换生成,这是目前常用的方法,生成的字符效果好,但计算量大;

另一种是在计算机内用位图(点阵)来表示,存储在字符高速缓冲区(字符发生器)里,显示时可以直接通过像素拷贝将其装入显示缓冲区中。

这是传统的方法,简单、速度快,但不灵活。

4何谓四连通和八连通?

写出一种边界表示的八连通区域填充算法。

区域的像素连通方式可以分为两类:

4连通区域:

取区域中的任何两个像素,从一象素出发,通过上、下、左、右4种运动,只经过该区域的点可以达到另一像素。

8连通区域:

取区域中的任何两个像素,从一象素出发通过上、下、左、右、两条对角线方向共8种运动,只经过该区域的点可以达到另一像素。

4连通区域是8连通区域的一种特殊情况。

4连通区域的边界必定是8连通式的;

8连通区域的边界必定是4连通式的。

8连通区域(边界表示)填充漫水算法Procedureflood-fill-8(x,y,boundary-color,new-color:

integer)beginifgetpixel(framebuffer,x,y)boundary-colorandgetpixel(framebuffer,x,y)new-colorthenbeginsetpixel(framebuffer,x,y,newcolor);

flood-fill-8(x,y+1,boundary-color,new-color);

flood-fill-8(x,y-1,boundary-color,new-color);

flood-fill-8(x+1,y,boundary-color,new-color);

flood-fill-8(x-1,y,boundary-color,new-color);

flood-fill-8(x+1,y+1,boundary-color,new-color);

flood-fill-8(x+1,y-1,boundary-color,new-color);

flood-fill-8(x-1,y+1,boundary-color,new-color);

flood-fill-8(x-1,y-1,boundary-color,new-color);

endend5解释活化边表的思想,以多边形区域填充为例介绍它的应用。

边的活化链表AEL:

记录当前扫描线与棱边的交点序列。

初值为空,在处理过程中利用ET表和求交点的递推关系不断刷新。

.链表AEL的边元素由以下4个域组成:

ymax:

该棱边的上端点的y坐标;

x:

该棱边与当前扫描线交点的x坐标;

Dx:

该棱边的斜率m的倒数;

next:

指向下一条棱边的指针。

(应用略)6已知多边形各个顶点的坐标为(2,2),(2,4),(8,6),(12,2),(8,1),(6,2)及(2,2),在用扫描线填充算法实现扫描转换时,写出其边表(ET)和全部的活化边表(AET)的内容。

(应用略)第四章图形变换与裁剪1什么是灭点?

在我们从一定的视角看3D图形时,会看到彼此平行的直线在远处有交点,这个交点就叫做灭点。

2试用几种不同顺序的简单几何变换,求出将平面上的任一线段P1(x1,y1),P2(x2,y2)变换成与X轴重合的变换阵,并说明其等效性。

几种常见的几何变换阵:

平移变换阵:

/100T=|010|TxTy1/(其中Tx,Ty分别是在X和Y轴上的平移量)比例变换阵:

/Sx00T=|0Sy0|001/(其中Sx,Sy分别是在X和Y轴上的比例系数)旋转变换阵:

/cossin0T=|-sincos0|001/(其中是绕原点逆时针旋转的角度)对称变换阵:

对Y轴对称/-100T=|010|001/对X轴对称/100T=|0-10|001/对原点对称/-100T=|0-10|001/对称于直线y=x/010T=|100|001/对称于直线y=-x/0-10T=|-100|001/题目中给出的线段,斜率为k=(y2-y1)/x2-x1,可以使用以下几种方法进行变换:

a.先把它平移到原点处,再旋转成水平线。

其变换矩阵为/100/cossin0T=|010|-sincos0|-x1y11/001/(其中=arctag(k)b.先旋转,使它水平,再平移到X轴上/cossin0/100T=|-sincos0|010|001/Tx01/(其中Tx可由几何计算得出)c.先平移,使原点在其所在的直线上,再旋转/100/cossin0T=|010|-sincos0|0My1/001/其中My=x1*(y2-y1)/(x2-x1)y1由计算结果可知,三者是等价的。

3已知OXYZ坐标系下平面方程是x+y+z+d=0,试求变换距阵T,使该平面在OXYZ坐标系下变成z=0。

三维坐标变换:

比例变换:

/a000T=|0e00|00i0|0001/其中a,e,i分别为在X,Y,Z坐标上的比例改变平移变换:

/1000T=|0100|0010|lmn1/其中a,e,i分别为在X,Y,Z坐标上的平移量旋转变换:

(手写)4试简述二维图形裁剪的基本原理及可选用的裁剪策略.裁剪的原理:

.在显示图形之前,组成图形的每一个基本元素都要经过裁剪,因此裁剪算法直接影响整个图形系统的效率。

.裁剪的基本目的是判断图形元素是否在所考虑的区域内。

如在区域内,则进一步求出在区域内的那一部分。

因此裁剪处理包含两部分内容:

1)点在区域内外的判断;

2)计算图形元素与区域边界的交点。

1.编码裁剪法(Sutherland-Cohen算法)2.中点分割裁剪法3.多边形的裁剪1.逐边裁剪法2.双边裁剪法第五章人机交互技术21.基本的交互任务有哪些?

它们可用什么设备执行?

基本交互任务1.定位2.选择3.数量输入4.文本输入5.三维交互任务2.举例说明WINDOWS系统常用的交互方式,编程实现其中一例。

(随便说说)3.叙述设计人机交互的一般风格和原则。

现在计算机系统的人机界面一般具有下列风格,即:

“所见即所得”(whatyouseeiswhatyouget),直接操作(directmanipulate)及菜单和图形符号(icon)驱动。

“所见即所得”在交互式图形系统中一般都能做到,即在屏幕上所见到的设计结果和用硬拷贝所得的输出结果是一致的。

直接操作是对对象、特性及关系等操作时用户可得到一种直观及形象的表示,以说明这个操作是正确地被执行了。

人机界面设计的一些基本原则:

(1)简单易学

(2)提供反馈(3)对错误操作容易纠正Undo(4)设计一致性功能布局、颜色、代号等应一致第六章曲线曲面的表示1.Bezier曲线具有哪些特性?

试用n的归纳法证明其凸包性。

2.B样条曲线的定义及其特点。

特点:

(1)凸包性

(2)分段参数多项式(3)连续性(4)几何不变性(5)保凸性(6)局部调整性(7)造型灵活性3.比较Bezier曲面和样条曲面的功能特点。

Bezier曲面:

凸包性,几何不变性,P(u,v)的控制网格Pij可以作为曲面的输入和人机交互的良好手段。

另外,易拼接性、易离散性都较好。

样条曲面:

凸包性,几何不变性,局部调整性和人机交互性与B样条曲线情况类似。

(功能方面找不到)4.Coons曲面片构造方法及其特点。

孔斯曲面的性质

(1)端点位置H(0,0),H(0,1),H(1,0),H(1,1)是曲面P(u,v)的端点。

(2)边界线在v=0处曲面的边界线为这是以式(6.2)中的矩阵的第一列元素为系数的三次埃尔米特曲线。

其余的边界线P(u,1),P(0,v),P(1,v)分别是以该矩阵中的第2列,第1行和第2行的元素为系数的三次埃尔米特曲线。

(3)跨界导矢由式(6.1)可得v=0处的跨界导矢为这是以式(6.2)中的矩阵的第3列元素为系数的三次埃尔米特曲线。

其余各条边界的跨界导矢分别是以该矩阵中的第4列,第3行和第4行的元素为系数的三次埃尔米特曲线。

另外,双三次孔斯曲面与双三次Bezier曲面的可相互转化。

第七章三维实体的造型1.体素构造表示法中两物体正则运算的公式,并举例说明它们的计算方法。

物体间的正则集合运算:

.传统的点集之间的并、交、差运算可能改变点集的正则性质,有必要对传统的点的集合运算施加一定的限制。

为此,对点集的正则集合运算作下述定义:

正则并运算A*B=r(AB)正则交运算A*B=r(AB)正则差运算A*B=r(AB)其中,r表示正则化算子。

正则物体经正则运算结果仍为正则物体。

(例子无)2.形体的拓扑信息和几何信息各包含哪些内容?

举例说明它们起何作用。

3.欧拉公式及其应用意义。

欧拉公式:

一个多面体的顶点数,边数和面数分别为V,E,F,则存在以下关系:

V-E+F=2这就是著名的欧拉公式,它说明了简单多边形的顶点数,边数和面数之间的关系。

4.试写出判定空间任意位置的两个长方体是否相交的算法。

(略)5.试比较实体的边界表示、扫移表示、CSG表示及八叉树表示的优缺点。

说明它们适应的应用。

边界表示:

优点:

实体的面、环、边、点的信息都直接表示出来了,因而,集合运算的结果可以继续参加集合运算,也便于显示或输出。

缺点:

数据量较多,所使用的存储空间较大。

适用范围:

广泛地用来表示三维实体。

扫描表示法:

只需要二维平面及曲线即可适用范围:

建筑设计中的平面图物体的CSG树表示:

优点:

将复杂物体表示转换为简单物体之间运算,也可递归求出物体性质;

缺点:

方法有局限性,物体复杂时,这种表示不太适应。

在现有的大多数实体造型系统中作为输入手段而得到广泛应用。

八叉树表示:

物体之间集合运算在八叉树中十分简单;

物体并两物体一共占有的空间;

物体交两物体共同占有的空间。

运算时只需同时遍历参加集合运算两物体相应的八叉树。

同时简化了隐藏线和隐藏面的消除。

占用存贮很多;

物体表示复杂;

每个结点除去描述该结点性质外,还需存储指向父节点及8个子树的指针。

(10个域)运算时只需同时遍历参加集合运算两物体相应的八叉树。

八叉树表示以存储空间换取了算法的效率。

常用来管理空间实体,以实现图形显示过程的加速。

第八章消隐技术1.为何要进行隐藏面的消除?

找出并消除物体中不可见的部分,称为消隐。

经过消隐得到的图形称为消隐图。

消除隐藏面的目的是让人更加能够感觉到物体的真实性,更能适应人的视觉需要。

2.简述区域子分消隐算法思想和描述。

区域子分算法思想:

区域子分算法是针对光栅扫描式图象显示器上填色产生图形的。

它是一种所谓分而治之的算法。

整个屏幕称为窗口,每一次把矩形的窗口等分成4个相等的小矩形,分成的矩形也称为窗口。

每一次子分,均要把要显示的多边形和窗口的关系做一次判断。

这种关系有以下4种:

多边形包围了窗口多边形和窗口相交窗口包围了多边形窗口和多边形分离窗口和每个多边形的关系确定之后,有些窗口内的图形便可显示了,它们属于下列情况:

(1)所有多边形都和窗口分离,这时只要把窗口内所有的象素填上背景颜色。

(2)只有一个多边形和窗口相交,或这个多边形包含在窗口内。

这时先对窗口内每一象素填上背景颜色,再对窗口内多边形部分用扫描线算法填色。

(3)只有一个多边形和窗口相交,这个多边形把窗口整个包围在内;

或虽有几个多边形和窗口相交,但观察者最近的一个多边形包围了整个窗口,这时把整个窗口填上离观察者最近的那个多边形的颜色。

对上述3种情况不成立的窗口再一分为四,分得的窗口重复上述的处理。

重复处理后,窗口的边长越分越短,分了若干次后,窗口的边长就和一个象素的宽度一样了。

这时,这个窗口对应的象素的颜色可取成最靠近观察者的多边形的颜色,或和这个窗口相交的多边形颜色的平均值。

3.简述Z缓存消隐算法思想和描述。

深度缓存算法(Z-Buffer)是一种最简单的图象空间面消隐算法,既适应于多边形面也适用其它曲面。

.它需要一个深度缓存数组ZB,其大小与屏幕上象素点的个数相同,也与显示器的帧缓存FB的单元个数相同,彼此一一对应。

算法描述.若有N个多边形,屏幕上象素点个数为mn,则算法的基本步骤如下:

(1)初始化ZB和FB,使ZB(i,j)=z的极小值,FB(i,j)=背景色;

(i=1,2,m,j=1,2,n)

(2)FORj1,n/*第j根扫描线*/FORi1,m/*第j根扫描线上第i个象素点*/FORk1,N/*多边形Pk*/(2.1)令Zij=Z的极小值;

(2.2)判断点(i,j)是否落在多边形Pk在XOY面上的投影多边形内;

(2.3)若(i,j)在Pk的投影多边形内,则计算多边形Pk在点(i,j)处的深度值Zij;

(2.4)比较Zij与ZB(i,j)的大小,若ZijZB(i,j),则令ZB(i,j)=Zij,FB(i,j)=多边形Pk的颜色。

4几种主要的隐藏面的消除算法的特点。

区域子分算法:

深度缓存算法:

最大优点在于简单,没有利用任何相关性,便于硬件实现扫描线算法:

它是直接从深度缓存算法中导出的只是在此基础上利用了边和点的相关性。

第九章真实感图形技术1.用框图描述三维真实感图形的产生流程。

真实感图形生成步骤用数学方法建立所需三维场景的几何描述,并将它们输入计算机;

将三维几何描述转换为二维透视图;

确定场景中的所有可见图(消隐);

计算场景中可见面的颜色。

(本章重点)-光强(Intensityoflight)或称光亮度2.Phong局部光照模型及其实现算法描述。

Phong模型考虑反射光3个分量所建立的光照模型,表示为:

I=kaIpa+kdIpdcosi+ksIpscosn,ka,kd,ks分别为环境反射、漫反射和镜面反射分量系数,即材质系数(kd+ks=1),表示对所有光源求和。

.一般在计算机实现时,用R、G、B三个分量计算,表示为:

3.叙述Phong多边形明暗处理算法原理,与Gouraud算法比较它的优缺点。

Phong明暗处理技术(PhongShading)思想:

对离散的法向量采样作双线性插值,构造一个连续的法向量函数,将这个连续的法向量插值函数代入光亮度计算公式,即得到一个非线性的光亮度插值公式。

任一点P处法向按插值方法由各顶点处法向推出。

大大减少了马赫带效应;

产生真实的高光效果。

由于对每一像素光亮度计算还需使用光照模型,故计算量大。

4.何为全局光照模型,典型的模型举例。

整体光照模型Whitted在Phong模型中增加了环境镜面反射光亮度Is和环境规则透射光亮度It,从而模拟周围环境的光透射在景物表面上产生的理想镜面反射和规则透射现象。

在3D绘图中材质的使用上。

5.实现真实感绘制的光线跟踪技术的主要思想和算法描述。

光线跟踪技术(RayTracing)基本原理.光线跟踪技术是为了求解Whitted模型而提出一种高度真实感图形绘制技术。

.光线投射(raycasting)假设从视点V通过屏幕像素e向场景投射一光线交场景中的景物于P1,P2.Pm点,那么离视点最近的P1点就是画面在像素e处的可见点,像素e的光亮度应由P1点向方向辐射的光亮度决定的。

这样,对屏幕上每一像素都投射光线以求得与场景的第一个交点,并置像素的光亮度为交点处的光亮度。

算法描述beginfor每个像素edobegin确定通过视点V和像素e的光线R;

ray_tracing(R,I,1);

置e的光亮度为I;

endendprocedureray_tracing(R,I,A)/*R跟踪光线,I跟踪光线光亮度;

AI对总光亮度的贡献系数*/beginifAk/GthenI:

=0elsebeginR与景物求交,返回可见点P1;

计算P1的局部光照明亮度Ic;

若P1所在表面为光滑镜面,确定P1的镜面反射光线Rr;

ray_tracing(Rr,Is,ksA);

若P1所在表面为透明面,确定P1的规则透射光线Rt;

ray_tracing(Rt,It,ktA);

I=Ic+ksIs+ktIt;

endend6.加速光线跟踪算法的主要方法。

光线跟踪求交加速算法特点:

场景分层次表示:

将场景中的所有表面按景物组成和景物间的相对位置分层次组织成一棵景物树。

包围盒:

指用几何形状相对简单的封闭表面将复杂景物包裹起来,若被跟踪的光线与包围盒不交,则与它所含所有景物表面均无交。

包围盒与场景分层次表示技术结合使用,大大减少求交工作量。

Procedureintersection(ray,scene)BeginIf(ray与scene的包围盒有交点)thenBeginif(scene是终结点)thenBeginray与scene求交,若有交,则交点置入交点表中endelsefor(scene的所有儿子child_of_scene)dointersection(ray,child_of_scene)endend7.何谓纹理映射,简述其实现原理。

纹理映射(texturemapping):

生成颜色纹理的方法。

其过程是:

在一平面区域(纹理空间)上预先定义纹理图案;

然后建立物体表面的点与纹理空间的点之间的对应关系(即映射)。

几何纹理生成方法主要有法向扰动法、分形生成技术等。

8.试写出将一幅图片贴到三维圆柱体表面的算法。

(略)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 高中教育

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1