计算机图形学期末复习笔记

计算机图形学

ch1绪论

1.1计算机图形学及其概念

计算机图形学(Computer Graphics)是研究怎样利用计算机来生成、处理和显示图形的原理、方法和技术的学科。

cg研究对象是图形

图形的要素

  • 几何(轮廓、点、线、面)
  • 非几何要素(色彩、纹理)

图形的表示方法

  • 参数法(图形,面向对象表示,代码生成)
  • 点阵法(图像,像素组成,扫描输入)

cg与相关学科的关系

1

1.2计算机图形学发展概况

设备

  • 随机扫描

  • 存储管式

  • 光栅扫描

官方标准

GKS PHIGS

非官方标准

DirectX Xlib Postscript OpenGL

1.3计算机图形学应用领域

虚拟现实 地理信息系统

1.4计算机图形学技术

OpenGL Web3D ACIS

ch2计算机图形系统

2.1计算机图形系统概述

计算机系统功能:计算、存储、对话、输入、输出

计算机系统包括

  • 图形硬件
  • 图形软件

图形硬件包括

  • 计算机平台
  • 图形设备(输入、输出、显示和绘制)

图形软件包括

  • 数据结构
  • 应用软件
  • 支撑软件

2.2计算机图形硬件系统

输入设备

  • 键盘
  • 鼠标
  • 光笔
  • 触摸屏
  • 触摸板
  • 操纵杆
  • 跟踪球
  • 空间球
  • 数字化仪
  • 扫描仪

输出设备

  • CRT
  • 随机扫描显示器(顺序扫描)
  • 光栅扫描显示器(随机扫描)

阴极射线管(CRT)显示器原理

电子枪发射电子束,经过聚焦系统、加速电极、偏转系统,轰击到荧光屏的不同部位,被其内表面的荧光物质吸收,发光产生可见的光点。即发射、聚焦、加速、偏转、显示

CRT分辨率

CRT在水平或竖直方向单位长度上能识别的最大光点个数(物理分辨率)

刷新频率

每秒的重绘次数

点距

光点的距离

光栅扫描

电子束依照固定的扫描线和规定的扫描顺序进行扫描。

双缓存技术

一个缓存用来刷新的同时,另一个写入数据信息,尔后这两个缓存可互换角色。这种方式称为双缓存

帧缓存作用

存储屏幕像素的颜色信息

帧缓存保存像素信息的方式

  • 像素颜色值
  • 像素颜色在查色表的索引值

位面技术

显存分成若干颜色的位平面(bit plane)。每像素一位的帧缓存称为位图(bitmap)

颜色查找表

帧缓存保存颜色的索引,而不是颜色本身

2.3计算机图形软件系统

计算机图形接口标准

CGI

计算机图形文件元标准

CGM SVG

图形核心系统标准

GKS PHIGS GL

交互式图形系统标准

STEP IGES

ch3二维图形生成算法

3.1直线

哪个方向平把哪个作为自变量,下面都假设0°<=arctan(Δy/Δx)<=45°,注意三种方法在自变量改变时,增量也会对称改变

DDL

因变量变化量=Δy/Δx(向下取整)

中点画线

通过判断备选点中点带入一般式方程后的正负取点,为了不用小数计算,算式都乘2

设d(x,y)=ax+bx+c

Δ0=d(x+1,y+0.5)-d(x,y)=2a+b

Δk>0 选(x+1,y) Δ(k+1)=Δk+2a

Δk<=0 选(x+1,y+1) Δ(k+1)=Δk+2(a+b)

Bresenham

通过判断准确点带入一般式方程后与备选点坐标的对比取点(Δy/Δx与1/2的比较),为了不用小数计算,算式都乘2Δx

Δ0=((f(x+1)-y)-1/2)**2Δx=(Δy/Δx-1/2)*2Δx=2Δy-Δx

Δk>0 选(x+1,y+1) Δ(k+1)=Δk+2Δy-2Δx

Δk<=0 选(x+1,y) Δ(k+1)=Δk+2Δy

有点像中点和实际点比赛,谁赢了下次就多给点,但因为始终往前走所以2Δy必须存在

3.2圆

由圆的对称性知,只需画出八分圆就可以画出其他部分

数值微分

中点画圆

在这里插入图片描述

使用顺时针第一部分作图,用一般式作为判断

Δ0=1-r

Δk>0 圆外,选(x+1,y-1) Δ(k+1)=Δk+2(xk-yk)+5

Δk<=0 圆内,选(x+1,y) Δ(k+1)=Δk+2xk+3

Bresenham

在这里插入图片描述

Δ0=2(1-r)

求H和D哪个近就行

δHD=mH-mD=2(Δk+yk)-1

δHD<=0 选H Δk+1k+2xk+1+1

δHD>0 选D Δk+1k+2(xk+1-yk+1+1)

3.3区域填充

区域表示类型

  • 顶点
  • 点阵
  • 内点
  • 边界

扫描线填充

  1. 计算交点(极小值记2个,极大值记0个,否则记1个)
  2. 交点排序
  3. 交点配对
  4. 区间填色

有序边表填充

  1. 数据准备
    1. 求交建立边表(ymax x dx)
  2. 扫描转换(活性边表)
    1. 更新
    2. 删除
    3. 插入
    4. 绘制

种子填充

  • 四连通(边界是八连通)

  • 八连通(边界是四连通)

    方法

    1. 种子入栈
    2. 栈非空时重复
      1. 出栈
      2. 填色
      3. 按连通方法入栈周围像素,若栈不空,跳至2.1继续

扫描线种子填充

  1. 入栈
  2. 栈非空时重复
    1. 出栈
    2. 左右延伸填充至xleft和xright
    3. 上下找未填充区间,把每个区间最右像素入栈,若栈不空,跳至2.1继续

3.4字符处理

  • 点阵

    字符定义为位图矩阵

  • 矢量

3.5属性处理

1.线宽

  • 刷子绘制
    • 线刷子(有缺口)
    • 方刷子(线宽与斜率有关)
  • 实区域填充

2.线型

位屏蔽器

3.颜色

3.6反走样

例子

  • 阶梯走样
  • 细节遗失与失真
  • 运动图形闪烁

解决

  • 硬件:采用高分辨率的光栅扫描
  • 软件:高分辨率计算,低分辨率显示

ch4图形的表示与建模

4.1规则形体的基本概念

基本图形元素

  • 线-
    面-


图形对象的描述

  • 图形信息
    • 几何信息
    • 拓扑信息(9种关系)
  • 非图形信息

4.2三维形体的存储模型

  • 线框模型
  • 表面模型
  • 实体模型

4.3三维实体的表示方法

  • 分解表示

    • 空间位置枚举
    • 八叉树
    • 单元分解
  • 构造表示

    • 扫描表示
    • 构造实体几何表示(CSG)
    • 特征表示
  • 边界表示

    • 半边
    • 翼边
    • 辐射边

表示的评判指标

  • 精确性
  • 封闭性
  • 有效性
  • 简洁性

4.4非规则几何形体的表示

  • 分形几何
  • 粒子系统
  • 形状语法

ch5交互式绘图技术

5.1交互式绘图系统概述

软件层次

  • 应用程序
  • 应用模型
  • 图形系统

硬件层次

  • 交互设备

图形系统的作用

应用程序和显示硬件之间的中介,起着将应用模型中定义的对象转化为模型视图的输出变换作用

输入模式

  • 请求
  • 采样
  • 事件

5.2交互式绘图系统的输入处理

5.3交互式绘图的交互技术

  • 构图
  • 拾取
  • 菜单
  • 反馈

5.4交互式绘图系统的构造

ch6图形几何变换

6.1图形变换的数学基础

齐次坐标

n维坐标用n+1维表示

规范化齐次坐标

在这里插入图片描述

好处

为坐标系变换提供了有效方法

可以表示无穷远点(h=0)

6.2二维基本变换

平移

比例

旋转

对称

错切

仿射(前五种的任意组合)

复合变换

6.3三维基本变换

需要注意的

旋转

错切

对称

逆变换(即变回去)

绕任意轴的旋转,先将轴移至与Z轴重合

ch7图形观察显示

7.1二维图形观察

7.2二维图形裁剪

直线段裁剪

1.编码裁剪算法

在这里插入图片描述

都是0

都在内部全部保留

相乘不为0

都在外部,全部舍弃

不都是0且相乘为0

边裁边判断

2.中点分割算法

3.liang-Barskey算法

多边形裁剪

Sutherland-Hodgman逐边裁剪

在这里插入图片描述

在这里插入图片描述

ch9真实感图形绘制

常见坐标系

场景世界坐标系(右手)

场景局部坐标系(右手)

观察坐标系(左手)

设备坐标系

取景变换(视向变换)

场景坐标系->观察坐标系

物体的消隐

在给定视点和视线方向后,决定场景中哪些物体的表面是可见的,哪些是被遮挡不可见的。

猜你喜欢

转载自blog.csdn.net/qq_51691526/article/details/129191242