计算机图形学复习笔记

本文详细介绍了计算机图形学的主要内容,包括图形系统综述、输出图元、颜色属性、二维几何变换、二维观察、可见面判别算法以及颜色模型。重点探讨了线和线段的画线算法、反走样技术、二维几何变换中的平移、旋转和缩放,以及裁剪操作。此外,还涵盖了颜色模型,如XYZ、RGB、YIQ、CMY、HSV和HLS模型,为理解计算机图形学提供了全面的知识框架。
摘要由CSDN通过智能技术生成

计算机图形学

1计算机图形学综述

计算机图形学的研究内容

  • 如何在计算机中表示图形

    • 图形通常由点、线、面、体等几何元素和灰度、色彩、线型、线宽等非几何属性组成
  • 如何利用计算机进行图形的生成、处理和显示的相关原理与算法

从处理技术上来看,图形主要分为两类

  • 由线条组成的图形,如工程图、等高线地图、曲面的线框图等
  • 类似于照片的明暗图(Shading),也就是通常所说的真实感图形

主要内容

  • 计算机辅助设计

  • 图示图形学

  • 计算机艺术

  • 娱乐

  • 教学和培训

  • 可视化

  • 图像处理

  • 图形用户界面

    • 典型的图形用户界面包括

      • 一个窗口管理器
      • 菜单显示
      • 图标

2图形系统综述

视频显示设备

  • 图形系统一般使用视频显示器作为基本的输出设备,主要的视频显示器设备有:

    • 刷新式CRT(阴极射线管)、光栅扫描显示器、随机扫描显示器、彩色CRT监视器、直视存储管、
      平板显示器、三维观察设备、立体感和虚拟现实系统

光栅扫描系统

随机扫描系统

图形监视器与工作站

※输入设备

  • 有多种设备用于图形工作站的数据输入:

    • 键盘
    • 鼠标
    • 跟踪球和空间球
    • 操纵杆
    • 数据手套
    • 数字化仪
    • 图像扫描仪
    • 触摸板
    • 光笔
    • 声音系统

※硬拷贝设备

  • 35-mm幻灯片

  • 投影胶片

  • 打印机

    • 打印机以击打式或非击打式产生输出

      • 击打式打印机隔着色带将某种格式的字符压在纸上
      • 非击打式打印机和绘图仪使用激光技术、喷墨技术、复印处理、静电方式和电热方式,把图像印在纸上
  • 绘图仪

图形软件

  • 图形软件通常分为两类

    • 通用编程软件包
    • 专用应用软件包

3输出图元

1.点和线

  • 如何绘制点?

    • 通过将应用程序提供的单个坐标位置转换成输出设备的相应操作,可以进行点的绘制
  • 如何绘制线?

    • 通过计算沿路径上两指定端点间的中间位置,可以绘制一条线段

※2画线算法

  • DDA算法
  • Bresenham画线算法

3.帧缓冲的装载

*4.画线函数

※5.圆生成算法

  • 圆的特性
  • 中点圆算法

※6.椭圆生成算法

  • 椭圆特征
  • 中点椭圆算法

7.其他曲线

8.并行曲线算法

9.曲线函数

10.像素编址和物体的集合表示

11.填充区域图元

  • 扫描线多边形填充算法

  • ※内外测试

    • 奇偶规则

      • 从任何位置点P到对象坐标范围以外的远点画一条射线,统计沿该射线与各边的交点数目。
        如果交点数为奇数,P是内部点。
        如果交点数为偶数,P是外部点。
    • 非零环绕数规则

      • 该方法统计多边形边以逆时针方向环绕某一特定点的次数,这个数称为环绕数。将二维物体的内部点定义为具有非零值的环绕数
      • 初始化环绕数为0,若从左往右穿过射线+1,从右往左穿过射线减1,内部点环绕数非零
    • 特殊情况

      • 穿过一个点时,若两边在射线同测则算2,在异侧则算1
  • 曲线边界区域的扫描线填充

  • ※边界填充算法

    • 区域填充的另一种方法是从区域的一个内部点开始,由内向外绘制点直到边界

    • 假如边界是以单一颜色指定的,则填充算法可逐个像素地向外处理,直至遇到边界颜色。这种方法称为边界填充算法

      • 边界填充程序接收作为输入的内部点(x ,y)的坐标、填充颜色和边界颜色。
      • 从(x ,y)开始,程序检测相邻位置以确定其是否是边界颜色,如果不是,就用填充颜色涂色,并检测其相邻位置。
      • 这个过程延续到检测完区域边界颜色范围内的所有像素为止。
    • 4连通区域、8连通区域

    • 逼近法

      • 利用堆栈,一次填充一行,不可穿墙
  • 泛滥填充算法

    • 有时,我们要对一个不是用单一颜色边界定义的区域进行填充(或重新涂色)

    • 通过替换指定的内部颜色,从而对该区域涂色而不是搜索边界颜色值,这个方法称为泛滥填充算法

      • 从指定的内部点(x ,y)开始,将期望的填充颜色赋给所有当前设置为给定的内部颜色的像素。假如所要涂色的区域具有多种内部颜色,可以重新设置像素值,从而使所有的内部点具有相同的颜色。然后使用4 —连通或8 —连通方法,逐步连通各像素位置,直到所有内部点都已被涂色

12.区域填充函数

13.单元阵列

14.字符生成

  • 存储的计算机字体有两种不同的表示方法

    • 点阵字体
    • 轮廓字体
  • 两种不同的字体

    • 有衬线

      • 在字符笔画末端有细线或加重
    • 无衬线

4输出图元的属性

线属性

  • 线型

    • 实线、虚线、点线、点划线
    • 光栅线算法通过绘制像素段来显示线型属性
  • 线宽

    • 线宽选择的实现取决于输出设备的能力

    • 其他线宽则是作为标准线宽的正整数倍,通过沿相邻平行线路径绘制额外的像素而显示的

    • 对于斜率绝对值小于1的直线,可修改画线程序,上下加像素来显示粗线;大于1左右加像素

    • 段长度和中间空白段的像素数目可以用像素掩

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值