*计算机图形学是指用计算机产生对象图形的输出的技术。
更确切的说,计算机图形学是研究通过计算机将数据转换为图形,并在专门显示设备上显示的原理、方法和技术的学科。
*图形学的主要研究内容:图形的生成和表示技术;图形的操作和处理方法;图形输出设备与输出技术的研究;图形输入设备、交互技术和用户接口技术的研究;图形信息的数据结构及存储、检索方法;几何模型构造技术;动画技术;图形软硬件的系列化、模块化和标准化的研究;科学计算的可视化*能够正确地表达出一个对象性质、结构和行为的描述信息,成为这个对象的模型。
*图像处理是指用计算机来改善图像质量的数字技术。
*模式识别是指用计算机对输入图形进行识别的技术。
*计算几何学是研究几何模型和数据处理的学科。
*交互式计算机图形学是指用计算机交互式地产生图形的技术。
*计算机图形系统的硬件包括五部分:计算机、显示处理器、图形显示器、输入设备、硬拷贝设备。
*CRT图形显示器工作方式有两种:随机扫描方式和光栅扫描方式。
*随机扫描方式的图形显示器通过画出一系列线段来画出图形。
*一帧:扫描过程所产生的图像。
*像素:在光栅扫描图形显示器中,屏幕上可以点亮或熄灭的最小单位。
*分辨率:显示屏上像素的总数。
*帧存储器:二维矩阵,帧存储大小=分辨率*单元字节,存储屏幕上每个像素对应的颜色或亮度值。
*屏幕上每个像素对应的颜色或亮度值要存储在帧存储器中。
*将图形描述转换成用像素矩阵表示的过程称为扫描转换。
*在光栅扫描显示方式中像素坐标是行和列的位置值,只能取整数。
*图形基元(输出图形元素):图形系统能产生的最基本图形。
*区域是指光栅网络上的一组像素。
*区域填充是把某确定的像素值送入到区域内部的所有像素中。
*区域填充方法:一类方法是把区域看做是由多边形围成的,区域事实上由多边形的顶点序列来定义,相应的技术称为是以多边形为基础的;另一类方法是通过像素的值来定义区域的内部,这时可以定义出任意复杂形状的区域。
相应的技术称为是以像素为基础的。
*通过像素的值的定义区域有两种常用的方法。
一种是内定义区域,另一种是由边界定义区域。
*以像素为基础的区域填充主要是依据区域的连通性进行。
*四连通区域是指从区域的一个像素出发,经过连续地向上、下、左、右四个相邻像素的移动,就可以到达区域内的任意另一个像素的区域。
(四联通区域必是入连通的,反之未必)*八连通:如果除了要经上下左右的移动,还要经左上、右上、左下和右下的移动,才能由一个像素走到区域中另外任意一个像素。
*利用区域的连通性进行区域填充,除了需要区域应该明确定义外,还需要事先给定一个区域内部像素,这个像素称为种子。
做区域填充时,要进行对光栅网格的遍历。
*像素段:将区域内由边界点限定的同一行内相连接的不具有新值newvalue的一组像素称为一个像素段,像素段用它最右边的像素来标识。
*奇偶性质:即一条直线与任意封闭的曲线相交时,总是从第一个交点进入内部,再从第二个交点退出,以下交替的进入退出,即奇数次进入,偶数次退出。
当然可能有一些“相切”的点应特殊处理。
*活跃边:与当前扫描线相交的边。
*活跃边表AET:存贮当前扫描线相交的各边的表。
*边表ET:记录多边形的所有边。
*“吊桶”中各项的内容一次是:1、边的另一端点的较大的y坐标ymax;2、与较小的y坐标对应的边的断电的x坐标xmin;3、斜率的倒数,1/m。
*栅栏:指一条与扫描线垂直的线,把多边形一分为二。
*规范化设备坐标系:图形系统为具体设备无关的引入,是二维正方形或三维正方体,即各坐标范围规定为从0到1。
*常见的基本二维图形几何变换有:平移变换、比例变换和旋转变换。
*本体坐标系(模型坐标系):为规定基本形体而引入的便于描述的坐标系。
*用户坐标系(世界坐标系):用户引入描述整个形体的坐标系。
*观察坐标系(视觉坐标系/目坐标系):为说明观察姿态而引入,也就是观察者所处的位置。
*设备坐标系(显示器坐标系/屏坐标系):是各种图形设备自身规定的在显示表面上采用的坐标系。
*齐次坐标表示法就是用n+1维向量表示一个n维向量。
*窗口就是在用户坐标系中指出的那个要显示出来的区域,这一区域通常为矩形区域*通常把整个显示屏幕区域称作屏幕域,它是设备输出图形的最大区域,是有限的区域。
*视见区是屏幕域中的一个子区域,通常为矩形区域,它最大与屏幕域等同。
视见区用于显示窗口中的图形。
*窗口与视见区的差别在于:窗口是在用户坐标系中确定的,它指出了要显示的图形,也就是我们想要看见什么;而视见区在设备坐标系中确定,它指出了实际显示的图形处于显示屏幕的哪一部分,也就是我们要用显示屏幕的哪部分实际去看。
视见区在设备坐标系中定义,也可以用矩形区域的左下角点和右上角点的坐标来表示。
*视见变换:就是将用户坐标系窗口内的图形变换到显示屏幕设备坐标系的视见区中以产生显示。
*投影就是把n维空间中的点投射到小于n维的空间中去。
*投影是如何形成的:首先在三维空间中确定一个投影中心和一个投影平面,然后从投影中心引出一些投射直线,这些直线通过形体上的没一点,与投影平面相交,在投影平面上就形成了形体的投影。
*平行投影:当投影中心与投影平面的距离为无穷远时,投射直线成为一组平行线,这种投影称为平行投影。
*透视投影:当投影中心与投影平面的距离是有限数值时,投射直线交于一点,形成灭点,这种投影称为透视投影。
*平行投影可以分为两种类型:正交投影和斜交投影。
*正交投影:投影方向与投影平面的法向相同。
即投影方向垂直于投影平面。
*常见的正交投影(三视图):正视投影、顶视投影、侧视投影。
*正投影:投影平面垂直于坐标轴的正交投影。
(正视投影、顶视投影和侧视投影)*等轴投影:投影方向与三个坐标轴的夹角都相等。
这种投影能使在三个坐标轴方向上有相等的透视缩短。
*斜交投影:投影方向与投影平面的法向不同。
*常见的斜交投影:斜二侧投影和斜等轴投影。
在斜交投影中,投影平面一般取坐标平面。
*斜二侧投影:垂直于投影平面的线段长度缩短为原来的一半。
*斜等轴投影:使垂直于投影平面的线段仍保持长度。
*透视投影性质:任意一组平行直线,如果平行于投影平面,则经透视投影后所得到的直线或者重合,或者仍保持平行;如果不平行于投影平面,将不再保持平行,并且必会汇聚于同一点。
*消失点(灭点):任意一组不平行于投影平面的平行直线,投影后所得的直线,必将汇聚于同一点。
消失点可以取任意多个。
*主消失点:三维直角坐标系中,透视投影时,如果一组平行直线平行于三个坐标轴中的一个,那么对应的消失点将落在坐标轴上。
最多只有三个主消失点。
*裁剪:去掉窗口外的不可见部分,保留窗口内的可见部分的过程。
*三维图形显示的处理流程:Z方向深度裁剪→世界坐标变换T1→投影T2→窗口至视窗的变换T3→至物理设备变换T4→裁剪→显示*参数曲线的构造方法:曲线上每一点的坐标均要表示成某个参数t的一个函数式,则曲线上每一点笛卡尔坐标参数式是:x=x(t),y=y(t),z=z(t);把三个方程合写到一起,曲线上一点坐标的向量表示是:P(t)=[x(t) y(t) z(t)];如用“'”表示对参数求导,则P(t)关于参数t的切向量或导函数是:P’(t)=[x’(t) y’(t) z’(t)]。
类似地,曲面写为参数方程形式为:x=x(u,w),y=y(u,w),z=z(u,w);写成向量形式,则是:P(u,w)=[x(u,w),y(u,w),z(u,w)]*参数方程的优点:1)对非参数方程表示的曲线、曲面进行变换,必须对曲线、曲面上的每个型值点进行几何变换;而对参数表示的曲线、曲面可对其参数方程直接进行几何变换(如平移、比例、旋转),从而节省计算工作量。
2)便于处理斜率为无限大的问题。
3)有更大的自由度来控制曲线、曲面的形状。
同时对于复杂的曲线和曲面具有很强的描述能力和丰富的表达能力。
4)参数方程中,代数、几何相关和无关的变量是完全分离的,而且对变量个数不限,从而便于用户把低维空间中的曲线、曲面扩展到高维空间去。
这种变量分离的特点使我们可以用数学公式去处理几何分量,同时可以使曲线和曲面具有统一的表示形式。
5)规格化的参数变量t∈[0,1],使其相应的几何分量是有界的,而不必用另外的参数去定义其边界。
它便于曲线和曲面的分段、分片描述,易于实现光顺连接。
6)易于用向量和矩阵表示几何分量,计算处理简便易行。
*计算机上表现的曲线和曲面,大体上可分为两类:一类要求通过事先给定的离散的点,称为插值的曲线或曲面。
另一类不要求通过事先给定的各离散点,而只是用给定各离散点形成的控制多边形来控制形状,成为逼近的曲线或曲面。
事先给定的离散点常称为型值点,由型值点求插值的或逼近的曲线或曲面的问题,称为曲线或曲面的拟合问题。
*插值:要求构造一条曲线顺序通过型值点,称为对这些型值点进行插值。
*逼近:当型值点太多时,构造插值函数使其通过所有的型值点相当困难的。
此时人们往往构造一条曲线,使它在某种意义上最佳逼近这些型值点,称之为对这些型值点进行逼近。
*曲线的数学表示形式:显示、隐式、参数*在计算机上表现的曲线和曲面,大体分为两类:一类要求通过事先给定的离散的点,称为插值的曲线或曲面,另一类不要求通过事先给定的各离散点,而只是用给定各离散点形成的控制多边形来控制形状,称为逼近的曲线或曲面。
*光顺是指曲线的拐点不能太多,要光滑顺畅。
*Bezier曲线性质:1.P(0)=P0,P(1)=P1,曲线通过所给出型值点列的起点和终点2.P’(0)=n(P1-P0),P’(1)=n(Pn-Pn-1)曲线在始点和终点处的切线方向与它的控制多边形的第一边和最后一边的走向一致。
3.曲线有对称性,4.曲线的凸包性。
整条曲线都包含在所有控制点所张成的凸包中。
*简述B样条曲线与Bezier之间的关系N+1个控制点P0,P1,…,Pn所确定的最高阶的B样条曲线是k=n+1阶的,这时由节点向量(0,0,…0,1,1,…,1)所去顶的B样条曲线,与该n+1个控制点所确定的Bezier曲线相同。
这个结论说明了B样条曲线确实是Bezier曲线的一种推广,Bezier曲线是B样条曲线的特例。
*凸壳:包含一个平面点集的最小凸区域。
*凸区域:指要求区域内任意两点的连线仍在该区域内。
*求点集S的凸壳(设S是平面上n个点的集合,则S的凸壳是一个凸多边形,它包含所有n点且面积最小):1)在S中选出壳上的点;2)给出围成凸多边形的序列。
*Graham扫面的实质是围绕已经按“倾角”排序的各顶点进行一次扫描,在扫描过程中消去在凸壳内部的点,留下以希望次序排列的壳顶点。
由于是按倾角递增排序,故可知若三个顶点P1.P2.P3连续“右转”,则P2是一个应去掉的内点。
*简单多边形:是平面上不相邻的边不能相交的多边形。