《计算机图形学》学习资料
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《计算机图行学》学习包本课程为有关专业的必修课程(或选修课程)。通过本课程的教学,学生可以学习、了解
和掌握计算机图形学中有关的基本原理、概念、方法和技术,培养和提高交互式图形设计的能
力。
计算机图形学与图象处理,计算机图形学的研究内容,计算机图形学的发展简史,计算机图
形学的发展方向,本课程教学要求与学习方法。
本章无习题
计算机图形系统的组成、功能与分类,计算机图形显示器,图形输入设备,图形输出设
备,图形软件系统,图形软件标准。
课后习题
1. 某光栅系统中,显示器的分辨率为1280×768,其中每个象素点的颜色深度为12 bit,
则该系统需要多大的帧缓存(即多少KB)?
2. 有甲乙两台光栅图形显示器,它们的产品说明书介绍均称可以显示4096种颜色,但甲机
在显示一幅画面时却只有256种颜色,问其中究竟是什么原因?
参考答案
1.1280×768×12 / (8×1024) = 1440(KB)
2.(1) 甲机:8个位平面,采用一张有256个单元,每个单元有12 bit的彩色查找表。
(2) 乙机:12个位平面,没有采用查找表。 1点的生成,生成直线的DDA算法和Bresenham 算法,二次曲线,区域的简单种子填充算法和
扫描线种子填充算法,多边形的扫描转换,字符的生成,反走样技术。
课后习题
1. 用对称DDA算法画出A(0,0)到B(5,3)连线的各象素点的位置,并在表内填出相应的中间
数据。
rx=5, ry=3,x=0,y=0,steps=5,dx=1,dy=0.6;
2. 用Bresenham算法画出A(0,0)到B(5,3)连线的各象素点的位置,并在表内填出相应的中
间数据。
dx=5, dy=3, d=2dy-dx=1, x=0, y=0, 2dy-2dx=-4, 3dy=6;
23. 用Bresenham算法画出圆心为(0,0),半径为8的顺时针90至45的1/8圆弧上各象素
点的位置。
4. 已知三点P0、
P1、P2 ,其坐标分别是[0,0]、[1,1]、[1,0],且根据P(0)= P0, P(1)= P2,
P'(0)= P1-
P0的条件决定一条抛物线曲线段,要求推导该曲线段的参数方程P(t),并根据此
曲线的参数方程求出P(0.5)和P'(0.5)的值,并作出该曲线的图形。
5. 推导过P0、
P1、P2三点的抛物线Q(t),要求满足Q(0)= P0 , Q(0.5)= P1, Q(1)= P2的条件,
并计算Q'(0)、Q'(0.5)、Q'(1)的值。
6. 图示为一边界点表示的区域(见左图,"0"为种子象素),根据简单种子填充算法按左、
上、右、下入栈顺序在右图中以数字标出各象素点填充的顺序。
7. 使用交点计数法设计一个算法,以有效判别一个点A[x0,y0]与一个多边形
P{[xi,yi],i=0,1,…,n}之关系。
8. 已知一多边形各顶点坐标为[0,3],[3,6],[5,6],[5,3],[4,3],[2,1],[0,3],现采用多边形扫描转换算法进行填充,试写出填充前NET及填充时AET的内容。
9. 根据扫描线种子填充算法按同一行先填充左区段后填充右区段,先上一行后下一行的顺序对所示区域进行填充("0"为种子象素),试标出各区段填充的顺序。
10. 分别按中心采样和面积采样求图中各象素点的亮度值(设最高亮度值为1,最低亮度值为0)。3
参考答案1.
2.
3. 用Bresenham算法画出圆心为(0,0),半径为8的顺时针90°至45°的1/8圆弧上各象素点的位置。4
4.
5.
6.
7. (1) 调用一个点与一条线段的判别算法,
以首先排除A在P边界上的情况;
(2) 过A向右作一条水平线,去掉P上的水平边;
(3) 求出该水平射线与多边形各边的交点;
(4) 按"上闭下开"或"下闭上开"的原则5 处理交点在某些情况下给予计不计数的问题;
(5) 按交点数的奇偶性以判别A在P的内或外。
8.
69.
710.
8二维观察变换,直线与多边形的裁剪,二维几何变换,二维图形计算,平面图形程序设计。
课后习题
1. 已知窗口(wxl=-0.5,wxr=0.5,wyb=0.0,wyt=1.0)及视口(vxl=0,vxr=1280,vyb=0,
vyt=1024),求窗口中一点P(0.25,0.75)变换至视口中P*的坐标值。
2. 根据区域编码裁剪算法对线段P1P2(
P1[80,75],P2[-40,0])进行裁剪,以图解形式说明裁
剪过程(已知:XL=0,XR=100,YB=0,YT=50)。
3. 根据中点分割裁剪算法以图解形式叙说裁剪过程(P1[
80,-50],P2[180,50],窗口尺寸同上
题)。
4. 使用图形变换的理论和方法推导平面上任一点相对于任一直线ax+by+c=0作对称变换的
变换矩阵T。
5. 将平面上一点P1[
x1,y1]经下列变换至P2[x2,y2],分别求其中的变换矩阵。
(1) 将P1直
接平移至P2。
(2) 在x1*x1+y1*y1=x2*x2+y2*y2且 x1,y1,x2,y2均>0的条件下,将P1
旋转至P2 。
(3) 在y1:x1=y2:x2且x1,y1,x2,y2均10的条件下将P1比例变
换至P2。
6. 证明两个连续的二维旋转变换是可以迭加的,即R(a1)R(a2)=R(a1)+R(a2)。
7. 已知窗口(Wxl,Wxr,Wyb,Wyt)及视口(Vxl,Vxr,Vyb,Vyt),试用图形变换的矩阵方法求二维
观察变换矩阵T。98. 参考二维几何变换的理论和方法推导求一个任意位置、方位、大小的长方形四个顶点的坐
标的计算公式,其中小x0、y0、a、b、a为已知。
9. 列出求任一正方形ABCD的四个顶点的坐标值的计算公式,其中x0、y0、a、a为已知。
10. 图示为正方形一边旋转一边缩小的图案,其中每次旋转的角度为a,旋转后的正方形的各个顶点均在旋转前的正方形的各边上,求前后两个正方形之间的变换矩阵。
11. 图示为一箭头,其中x0、x0、a、b、d、a为已知,求A、B、C三点的坐标值。
12. 设计一个算法,以求平面上任意两条线段的交点。
13. 参考多边形的双边裁剪算法,设计一个算法以求两个相交的多边形的交集。1014. 用多边形的单边裁剪算法对图示的多边形进行裁剪,试以图形方式叙述每一步裁剪后输
出的多边形序列,以及裁剪后的最后结果。