《计算机图形学基础教程》由会员分享,可在线阅读,更多相关《计算机图形学基础教程(19页珍藏版)》请在人人文库网上搜索。

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

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

3、光笔和触摸屏等。 第二章 1. 描述直线扫描的DDA算法、中点画线算法和Bresenham算法,并用 程序实现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的中点(x。

4、p+1,yp+0.5 )称为M Q为理想直线与x=xp+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=7d=1d1=-6d2=8 判别式随坐标的变。

5、化: x y d 0 1 1 1 1 -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) grid 3. 描述多边形扫描转换的扫描线算法,并写出伪码。 P26-27 4. 字符串裁剪可按哪三个精度进行? 答:串精度,字符精度,笔画或像素精度 5. 为了在显示器等输出设备上输出字符 ,系统中必须装备有相应的字 库。字库中存储了每个字符。

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

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

8、)设要裁剪的线段是 P0P1。P0P1和窗口边界交于 A,B,C,D 四点,见图。算法的基本思想是从 A,B和P0三点中找出最靠近的P1 点,图中要找的点是P0。从C,D和P1中找出最靠近P0的点。图中 要找的点是C点。那么P0C就是P0P1线段上的可见部分。(2)梁友 栋-Barsky算法只能应用于矩形窗口的情形。通常梁友栋 -Barsky算 法比Cohen- Sutherland算法效率更高,因为需要计算的交点数目减 少了。更新参数u1、u2仅仅需要一次除法;线段与窗口边界的交点 仅计算一次,就计算出u1、u2最后的 值。相比之下,即使一条线段 完全落在裁剪窗口之外,Cohen- Suth。

9、erland算法也要对它反复求交 点,而且每次求交计算都需要做乘除法。 8. 解释走样及反走样的概念,并描述反走样的主要方法。 答:用离散量表示连续量引起的失真现象称为走样, 用于减少或消除 这种效果的技术称为反走样。反走样的主要方法有三种:(1)提 高分辨率,把显示器分辨率提高一倍,直线经过两倍的像素,锯齿也 增加一倍, 但同时每个阶梯也减少了一倍, 所以显示出的直线看起来 就平直光滑了一些。增加分辨率虽然简单,但不是经济的方法,而且 它也只能减轻而不能消除锯齿问题。( 2)区域采样,区域采样方 法假定每个像素是一个具有一定面积的小区域, 将直线段看做具有一 定宽度的狭长矩形。 当直线段与像。

10、素有交时, 求出两者相交区域的面 积,然后根据相交区域面积的大小确定该像素的亮度值。(3)加 权区域采样,使相交区域对像素亮度的贡献依赖于该区域与像素中心 的距离。当直线经过该像素时, 该像素的亮度 F 是在两者相交区域 A、 上对滤波器进行积分的积分值。 9. 描述消隐的扫描线 Z-Buffer 算法,并与其他两种 Z-Buffer 算法进 行比较。 答:( 1)算法的思想描述:在处理当前扫描线时,开一个一维数组 作为当前扫 描线的 Z-Buffer 。首先找出与当前扫描线相关的多边形, 以及每个多边形中相关的边对; 然后计算每个边对之间的小区间上各 像素的深度,并与 Z-Buffer 中的。

11、值相比较,找出各像素处对应的可 见平面,计算颜色,写帧缓存。对深度计算,采用增量算法。( 2) 与 Z-Buffer 算法相比,扫描线 Z-Buffer 算法做了如下两点的改进。 一、 将整个绘图窗口内的消隐问题分解到一条条扫描线上解决,使 所需的 Z 缓存器大大减少。 二、 计算深度值时,利用了面的连贯性,只用了一个加法。但它在 每个像素处都计算深度值,进行 深度比较。因此,被多个多边形覆 盖的像素区处还要进行多处计算,计算量仍然很大。 10. 比较书中举例的几种消隐算法的优缺点 答:常见的面消隐算法有:画家算法、Z缓冲区(Z-Buffer)算法、扫 描线 Z-buffer 算法、扫描线算法。

12、、区域子分割算法 、光线投射算法 等。 Z缓冲区算法是一种典型的、也是最简单的图象空间的消隐算法。 另 一个优点是算法便于硬件实现,并可以并行化。 缺点: 1)需要一个额外的 Z 缓冲器 2)在每个多边形占据的每个像 素处都要计算深度值, 计算量大 3)没有利用图形的相关性与连续性。 画家算法它的缺点是只能处理互不相交的面 . 扫描线算法和 Z buffer 算法的缺点是,对于不可见的多边形面片了同样画出,这样 造成了绘制过程中不必要的费时。BSP树算法利用它的存储结构可以 优化多边形的排序过程, 故它的排序速度比画家算法要快, 尤其是复 杂度高的场景。 第三章 1. 参数曲线曲面有几种表示形。

13、式? (1)代数形式 一条三次曲线的代数形式是: 二偽/+吐丿+%/ +為冥 5 y(f)二 t + a2 t + ax t + az t e 0,1 z(t) = a.j3 -a2sr (2)几何形式 描述参数曲线的条件有:端点位矢、端点切矢、曲率等。 F(f)二血比+笛尸+ G忍+ G片t e 04 上式是三次 Hermite(Ferguson)曲线的几何形式,F0, F1, GO, G1称 为调和函数(或混合函数) 有参数和非参数(显式、隐式)表示 2. 设有控制顶点为 P0(0,0) , P1(48,96) , P2(120,120) , P3(216,72) 的三次 Bezier曲线。

14、P(t),试计算 P(0.4)的(x,y)坐标,并写出 (x(t),y(t)的多项式表示。 丫 p(t)=(1 -f)3p0 +3ri-o2 十3八- op;十 f-0 二 P(0+4) =(0.6)sPc +L2(0,6):P + LS(O.4)22 +(0.4) -0.2160 0-0.432 48 960288 120120+0.064216 = 69.12 SO 64 fx(Z) = (1+ 引(1 -02xi -3t2(lt)x2 圮 y(t) =(1 - f)3y0 + 3f(L-02y, + 护Q-g 亠八儿 3. 设一条二次Bezier曲线的控制顶点为P0 P1和P2,另一条二。

15、次 Bezier曲线的顶点是Q0Q1和Q2,写出两条曲线精确合并成一条二 次Bezier曲线的条件。 解】如下图所示,由于可以精葫合并,说明两曲线是由一条曲线在掺数o1) 由公式 C() = (1-/)3P0-i-3K1-:P1 + 3/:(1-/)P2 + ?P3 Ql=(8 2_)PCH4 9JPK2 9)P2-(1 27P3(t=l 3) QA0 2 T)PCH 2 9)P 1 4; 9) P;27JP3(t=2 3) 将Q0, QI , QI Q3的X, Y坐标代入左程组,得 NOAO (50, 0) X1Y1 (37. 37) X2Y2 (37t 37) X3Y3 (0, 100) 。

16、5.设一条三次Bezier曲线的控制顶点为 P0, P1, P2, P3。对曲线上 一点P(0.5),及一个给定的目标点T,给出一种调整Bezier曲线形 状的方法,使得P(0.5)精确通过点T。 根据Bezier曲线的递推算法,构造过程: ,(90,90)为控制顶 6. 计算以(30,0) , (60,10) , (80,30) , (90,60) 三角 点的4次Bezier 曲线在t=1/2 处的值,并画出 de Casteljau 斤(30,0) Pi (6040)(45,5) 1 . 7*5,12.5) P:(80?30)-p1(70.20)6(5. 只(90,90 )_对(90*75。

17、 卜亠虽(87, ) /(82 5?46+25)(*5 J4.375) 7. 给定三次Beizer曲线的控制顶点(1,0 ) , (1,0,100 ) , ( 100,0), (100,100),计算升阶一次后的控制顶点。 设给宦原始控制顶点/ = j-l,j -h 及QOQQOd丄1J,可怨 1 F A111 P=R +-人=2tP +2(-7)巴=P一 P (2)设球的半径为r,若rd,则平面与球相交,交线为圆,圆心为P,半径为 14. 形体表示有哪些常见的方法? P94 15. 网格简化时如何度量删除一个顶点的误差? P118 (注:文档可能无法思考全面,请浏览后下载,供参考。可复制、编制,期待 你的好评与关注)。

计算机图形学基础教程代码,计算机图形学基础教程相关推荐

  1. 计算机图形学多边形填充代码_零基础学计算机图形学太难?或许你缺的只是一本好书...

    雷锋网 AI 科技评论按,计算机图形学是一个有趣的话题--如何利用算法和一些几何数据制作玩具总动员?这不仅对于普通的电影迷来说是一个神秘的话题,而且对于那些还没有接触过它的世界级工程师来说也非常有吸引 ...

  2. 计算机图形学曲线算法代码,计算机图形学自由曲线绘制算法.doc

    计算机图形学自由曲线绘制算法 宁夏师范学院数学与计算机科学学院 <>实验报告 实验序号: 实验项目名称: 学 号姓 名专业.班实验地点指导教师时 间.实验内容与步骤 1 //TestVie ...

  3. 平移变换计算机图形学c语言代码,计算机图形学第一次作业——平移,缩放和旋转...

    一. MFC 框架下使用 OpenGL 绘图演示平移.旋转.缩放等操作的具体实现 二. 实现算法 绘制的图形以各种顶点及顶点之间的线.面构成 要想对这些图形进行操作,只需要对各种顶点在坐标系中的坐标进 ...

  4. 若发现计算机感染了恶意代码,计算机感染了恶意软件几种常见症状

    原标题:计算机感染了恶意软件几种常见症状 我们在使用计算机设备就会出现一些问题,在点击网页一直在刷新,根本不会出现你想要搜索的页面内容,终于你受不了了,重启电脑,然而这一问题没有得到解决,还是出现之前 ...

  5. 北邮计算机实习网络爬虫设计报告,北邮计算机实习报告(含代码).doc

    北邮计算机实习报告(含代码) 计算机实习报告 学院: 班级: 学号 序号: 姓名: 目录 一.魔方阵4 1.实验要求4 2.设计4 3.流程图4 4.功能实现5 5.应用5 6.界面5 二.动画设计6 ...

  6. 计算机图形学基础教程论文,计算机图形学小论文

    为毕业生写计算机图形学小论文提供计算机图形学小论文范文参考,涵盖硕士.大学本科毕业论文范文和职称论文范文,包括论文选题.开题报告.文献综述.任务书.参考文献等,是优秀免费计算机图形学小论文网站. 计算 ...

  7. 计算机图形学实验一 《MFC绘图基础》

    计算机图形学实验一 <MFC绘图基础> 视频讲解:无没啥讲的,有一些东西在实验二视频提了一下 一.MFC介绍 1.基本介绍: MFC是微软公司提供的一个类库,以C++类的形式封装了Wind ...

  8. 计算机图形学基础第二版,计算机图形学基础(第2版)课后习题答案__陆枫.pdf

    计算机图形学基础(第2版)课后习题答案__陆枫 第一章绪论 概念:计算机图形学.图形.图像.点阵法.参数法. 图形的几何要素.非几何要素.数字图像处理: 计算机图形学和计算机视觉的概念及三者之间的关系 ...

  9. 计算机图形学基础何云峰,计算机图形学基础第版课后习题答案陆枫何云峰.doc...

    计算机图形学基础第版课后习题答案陆枫何云峰 第一章 绪论 概念:计算机图形学.图形.图像.点阵法.参数法. 图形的几何要素.非几何要素.数字图像处理: 计算机图形学和计算机视觉的概念及三者之间的关系: ...

最新文章

  1. SCVMM2012功能测试(7)—更新管理(符合性)
  2. Adobe Flash Player 10.0.32.18
  3. asp.net学习历程。
  4. 能让你少写1000行代码的20个正则表达式
  5. String 源码解析
  6. Online Judge汇总
  7. Lintcode 51.上一个排列[Medium]
  8. UI设计师必备|Web设计尺寸规范
  9. DevOps案例研究|中华有为-解构华为软开云DevOps实践
  10. python自动填写网页数据并提交_python实现问卷星网站的自动填写
  11. 常见的运营商网络安全问题
  12. java对接 布防 海康威视_java调用海康威视sdk获取车牌号demo
  13. Retinex、log对数变换、直方图均衡化区别,边缘增强Retinex算法与拉普拉斯算法联系、均衡化与亮度调节算法、大津阈值计算
  14. 使用python计算贝尔宾团队角色测评结果
  15. 微软Windows 10硬件新品发布会
  16. vba 判断文本框内容是否为空_Excel/VBA编程用户交互函数(二)——InputBox()函数和inputbox方法...
  17. php 物联网协议,物联网常用通讯协议科普
  18. 电影 下载 地址收集
  19. 计算机换用户无法启动软件吗,电脑软件无法启动常见的三种原因以及解决方法...
  20. 是什么让我们与销售机会擦肩而过?

热门文章

  1. vue中使用iview UI
  2. 力扣739:每日温度 medium 20220329
  3. 万众瞩目!YOLOv8诞生,要包揽目标检测、实例分割新SOTA!
  4. 1. 定义、功能和目标
  5. 交叉编译Qt应用和发布
  6. Git操作 detected dubious ownership in repository at... 问题
  7. J-LINK V9DFU方式更新固件
  8. JavaScript语法检查与构建工具——JSLint和NodeJS的使用
  9. 什么是类?对象?类与对象的关系是什么?
  10. Android 二次封装网络加载框架