收藏 分享(赏)

计算机图形学基础教程.docx

上传人:weiwoduzun 文档编号:4241919 上传时间:2018-12-17 格式:DOCX 页数:17 大小:5.45MB
下载 相关 举报
计算机图形学基础教程.docx_第1页
第1页 / 共17页
计算机图形学基础教程.docx_第2页
第2页 / 共17页
计算机图形学基础教程.docx_第3页
第3页 / 共17页
计算机图形学基础教程.docx_第4页
第4页 / 共17页
计算机图形学基础教程.docx_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、第一章1.计算机图形学的主要研究内容是什么? 答:计算机中图形的表示方法,以及利用计算机进行图形的计算、处理和显示的相关原理与算法,构成了计算机图形学的主要研究内容。 图形硬件、图形标准、图形交互技术、光栅图形生成算法、曲线曲面造型、实体造型、真实感图形计算与显示算法,以及科学计算可视化、计算机动画、自然景物仿真、虚拟现实等。 2.列举三个以上图形学的应用领域。 答:计算机辅助设计与制造(CAD/CAM)、可视化、真实感图形实时绘制与自然景物仿真、计算机动画、用户接口、计算机艺术等。 3.一个图形系统通常由哪些图形设备组成? 答:一个图形系统通常由图形处理器、图形输入设备和图形输出设备构成。

2、4.图形和图像的区别是什么?答:图像是指计算机内以位图(Bitmap)形式存在的灰度信息;图形含有几何属性,更强调物体(或场景)的几何表示,是由物体(或场景)的几何模型(几何参数)和物理属性(属性参数)共同组成的。5.CRT 显示器的原理是什么?答:通过电子枪,将从阴极发射出大量电子,经过强度控制,聚集和加速,使其形成电子流,再经过偏转线圈的控制,快速的轰击显示器的荧光屏,从而使荧光屏上的荧光粉发亮。6.LCD 有哪些技术指标?(1)可视角度(2)点距和分辨率(3)展望7.有哪些常用的图形输入设备? 答:键盘、鼠标、光笔和触摸屏等。第二章1.描述直线扫描的 DDA 算法、中点画线算法和 Bre

3、senham 算法,并用程序实现 Bresenham 算法。答:直线扫描的 DDA 算法: DDA 算法原理是当直线的斜率在(-1,1)之间时,它的增量应该以x 为准,即每次都应该让 x 增加一个像素,然后计算出 y 的值(y 值增量绝对值小于 1,更精确),再进行四舍五入,最终得到实际点的像素。当直线斜率绝对值大于 1 时,增量应该以 y 为准。 中点画线算法: 假定直线斜率 k 在 01 之间,当前象素点为(xp,yp),则下一个象素点有两种可选择点 P1(xp+1,yp)或P2(xp+1,yp+1)。若 P1 与 P2 的中点(xp+1,yp+0.5)称为 M,Q 为理想直线与 x=xp

4、+1 垂线的交点。当 M 在 Q 的下方时,则取 P2 应为下一个象素点;当 M 在 Q 的上方时,则取 P1 为下一个象素点。 Bresenham 算法: 过各行、各列像素中心构造一组虚拟网格线,按直线从起点到终点的顺序计算直线各垂直网格线的交点,然后确定该列像素中与此交点最近的像素。2.用中点画线发扫描转换从点 A(1,0)到 B(4,7)经过的直线段,并给出每一步的判别值。解:由于 A B 直线的斜率 k=7/3 且 k1 我们将坐标进行交换,得到的 k=3/7 就可以用书上的方法: a=-3 b=7 d=1 d1=-6 d2=8 判别式随坐标的变化: x y d 0 1 1 1 1 -

5、5 2 2 3 3 2 -3 4 3 5 5 3 -1 6 4 7 7 4 1 程序: x=1:1:4; y=7/3*x-7/3; a=1 1 2 2 3 3 4 4; b=0:7; plot (x,y,k,a,b,*r) title(MATLAB 图形) xlabel(x=1:4) ylabel(y=0:7) grid3.描述多边形扫描转换的扫描线算法,并写出伪码。P26-274字符串裁剪可按哪三个精度进行? 答:串精度,字符精度,笔画或像素精度。5.为了在显示器等输出设备上输出字符,系统中必须装备有相应的字库。字库中存储了每个字符的形状信息,字库分为哪两种类型?各有什么特点?答:字库分为矢

6、量型和点阵型两种。P326.简述裁剪方法和中点裁剪方法的思想,并指出中点裁剪方法的改进之处及这种改进的理由。 答:(1)裁剪就是确定图形中哪些部分落在显示区之内,哪些落在显示区之外,最后只需显示落在显示区内的那部分图形,以便提高显示效率的过程。一般的裁剪方法是:先裁剪再扫描转换。 (2)中点裁剪方法的思想是首先对线段端点进行编码,并把线段与窗口的关系分为三种情况,即在全在窗口内、完全不在窗口内和线段与窗口有交。对第一种情况,显示该线段;对第二种情况,丢弃该线段;对第三种情况,用中点分割法求出线段与窗口的交点,即从线段的一端的端点出发找出距该端点最近的可见点,并从线段的另一端点出发找出距该端点最

7、近的可见点,两个可见点之间的连线即为线段的可见部分。 (3)中点裁剪方法改进之处:对第三种情况,不直接解方程组求交,而是采用二分法收搜索交点。 这样改进的理由是:计算机屏幕的像素通常为 10241024,最多十次二分搜索即可到像素级,必然能找到交点,而且中点法的主要计算过程只用到加法和除 2 运算,效率高,也适合硬件实现。7.是描述 Liang-Barskey 裁剪算法,并说明在什么情况下它比中点法和 Cohen-Sutherland 快及原因。答:(1)设要裁剪的线段是 P0P1。 P0P1 和窗口边界交于 A,B,C,D四点,见图。算法的基本思想是从 A,B 和 P0 三点中找出最靠近的P

8、1 点,图中要找的点是 P0。从 C,D 和 P1 中找出最靠近 P0 的点。图中要找的点是 C 点。那么 P0C 就是 P0P1 线段上的可见部分。(2)梁友栋-Barsky 算法只能应用于矩形窗口的情形。通常梁友栋-Barsky 算法比 CohenSutherland 算法效率更高,因为需要计算的交点数目减少了。更新参数 u1、u2 仅仅需要一次除法;线段与窗口边界的交点仅计算一次,就计算出 u1、u2 最后的 值。相比之下,即使一条线段完全落在裁剪窗口之外,CohenSutherland 算法也要对它反复求交点,而且每次求交计算都需要做乘除法。8.解释走样及反走样的概念,并描述反走样的主

9、要方法。 答:用离散量表示连续量引起的失真现象称为走样,用于减少或消除这种效果的技术称为反走样。反走样的主要方法有三种: (1)提高分辨率,把显示器分辨率提高一倍,直线经过两倍的像素,锯齿也增加一倍,但同时每个阶梯也减少了一倍,所以显示出的直线看起来就平直光滑了一些。增加分辨率虽然简单,但不是经济的方法,而且它也只能减轻而不能消除锯齿问题。 (2)区域采样,区域采样方法假定每个像素是一个具有一定面积的小区域,将直线段看做具有一定宽度的狭长矩形。当直线段与像素有交时,求出两者相交区域的面积,然后根据相交区域面积的大小确定该像素的亮度值。 (3)加权区域采样,使相交区域对像素亮度的贡献依赖于该区域

10、与像素中心的距离。当直线经过该像素时,该像素的亮度 F 是在两者相交区域 A、上对滤波器进行积分的积分值。9.描述消隐的扫描线 Z-Buffer 算法,并与其他两种 Z-Buffer 算法进行比较。 答:(1)算法的思想描述:在处理当前扫描线时,开一个一维数组作为当前扫 描线的 Z-Buffer。首先找出与当前扫描线相关的多边形,以及每个多边形中相关的边对;然后计算每个边对之间的小区间上各像素的深度,并与 Z-Buffer 中的值相比较,找出各像素处对应的可见平面,计算颜色,写帧缓存。对深度计算,采用增量算法。(2)与 Z-Buffer 算法相比,扫描线 Z-Buffer 算法做了如下两点的改

11、进。 一、 将整个绘图窗口内的消隐问题分解到一条条扫描线上解决,使所需的 Z 缓存器大大减少。 2、 计算深度值时,利用了面的连贯性,只用了一个加法。但它在每个像素处都计算深度值,进行 深度比较。因此,被多个多边形覆盖的像素区处还要进行多处计算,计算量仍然很大。10.比较书中举例的几种消隐算法的优缺点 答:常见的面消隐算法有:画家算法、Z 缓冲区(Z-Buffer)算法、扫描线 Z-buffer 算法、扫描线算法、区域子分割算法 、光线投射算法等。 Z 缓冲区算法是一种典型的、也是最简单的图象空间的消隐算法。 另一个优点是算法便于硬件实现,并可以并行化。 缺点:1)需要一个额外的 Z 缓冲器

12、2)在每个多边形占据的每个像素处都要计算深度值,计算量大 3)没有利用图形的相关性与连续性。 画家算法它的缺点是只能处理互不相交的面.扫描线算法和Zbuffer 算法的缺点是,对于不可见的多边形面片了同样画出,这样造成了绘制过程中不必要的费时。BSP 树算法利用它的存储结构可以优化多边形的排序过程,故它的排序速度比画家算法要快,尤其是复杂度高的场景。第三章1.参数曲线曲面有几种表示形式? (1) 代数形式 一条三次曲线的代数形式是: (2) 几何形式 描述参数曲线的条件有:端点位矢、端点切矢、曲率等。 上式是三次 Hermite(Ferguson)曲线的几何形式,F0,F1,G0,G1称为调和

13、函数(或混合函数)有参数和非参数(显式、隐式)表示2.设有控制顶点为 P0(0,0),P1(48,96),P2(120,120),P3(216,72)的三次 Bzier 曲线 P(t),试计算 P(0.4)的(x,y)坐标,并写出(x(t),y(t)的多项式表示。3.设一条二次 Bezier 曲线的控制顶点为 P0、P1 和 P2, 另一条二次 Bezier 曲线的顶点是 Q0、Q1 和 Q2, 写出两条曲线精确合并成一条二次 Bezier 曲线的条件。4.已知 Bezier 曲线上的 4 个点分别为 Q0(50,0),Q1(100,0),Q2(0,50)和 Q3(0,100),它们对应的参数

14、分别为 0,1/3,2/3,1,反求 Bezier 曲线的控制点。5.设一条三次 Bzier 曲线的控制顶点为 P0,P1,P2,P3。对曲线上一点 P(0.5), 及一个给定的目标点 T,给出一种调整 Bzier 曲线形状的方法,使得 P(0.5)精确通过点 T。根据 Bzier 曲线的递推算法,构造过程:6.计算以(30,0),(60,10),(80,30),(90,60),(90,90)为控制顶点的 4 次 Bzier 曲线在 t=1/2 处的值,并画出 de Casteljau 三角形。7.给定三次 Beizer 曲线的控制顶点(1,0),(1,0,100),(100,0),(100,

15、100),计算升阶一次后的控制顶点。8. 用 de Boor 算法,求以(30,0),(60,10),(80,30),(90,60),(90,90)为控制顶 点,以 T=0,0,0,0,0.5,1,1,1,1为节点向量的三次 B 样条曲线在 t=1/4 处的值。9.试证明 n 次 Bezier 曲线退化为 n-1 次 Bezier 曲线的条件为nP0=0。10.NURBS 曲线的凸包性指什么?11.Q,Q1,Q2,S1,S2 是平面上的 5 个点。请设计一条均匀三次 B样条曲线, 使曲线经过这 5 个点,且满足如下设计要求: (1) 在 Q1,Q2 点与 Q Q1,Q Q2 相切; (2) 分

16、别在 Q,Q1 和 Q,Q2 间生成一段直线段; (3) 在 Q 是一尖点。12.常见的曲面、曲面求交方法有哪些?原理是什么?答:1)代数方法。代数方法是利用代数运算,特别是求解代数方程的方法求出曲面的交线。 2)几何方法。几何方法求交是利用几何的方法,对参与求交的曲面的形状大小、相互位置以及方向等进行计算和判断,识别出交线的形状和类型,从而精确求出交线。 3)离散方法离散方法求交是利用分割的方法,将曲面不断离散成较小的曲面片,直到每一子曲面片均可用比较简单的面片来逼近,然后用这些简单面片求交得一系列交线段,连接这些交线段即得到精确交线的近似结果。 4)跟踪方法。跟踪方法求交是通过先求出初始交点,然后从已知的初始交点出发,相继跟踪计算出下一交点,从而求出整条交线的方法13.用几何法求平面和球的交线。答:可按以下步骤求解: (1)求球心到平面的距离,设为 d,交点(投影点)为 P; (2)设球的半径为 r,若 rd,则平面与球相交,交线为圆,圆心为 P,半径为14.形体表示有哪些常见的方法?P9415.网格简化时如何度量删除一个顶点的误差?P118

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

当前位置:首页 > 实用文档 > 简明教程

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报