计算机图形学的应用实例(计算机图形作业).doc

计算机图形学大作业

计算机图形学的应用实例

班级:

学号:

姓名:

2012-03-12

计算机图形学的应用实例

一.计算机图像学简介

计算机图形学是计算机专业本科生必修的专业基础课。本课程介绍图形显示及图形表示的方法和原理。通过本课程的学习,使学生了解计算机在图形应用方面的基础原理,了解图形应用中的特殊性处理方法,进而学习和掌握计算机在图形领域应用中分析、建模、程序设计等方面知识,为问题的解决提供适宜的模型和办法。

简单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。图形通常由点、线、面、体等几何元素和灰度、色彩、线型、线宽等非几何属性组成。主要的目的是要利用计算机产生令人赏心悦目的真实感图形。为此,必须建立图形所描述的场景的几何表示,再用某种光照模型,计算在假想的光源、纹理、材质属性下的光照明效果。事实上,图形学也把可以表示几何场景的曲线曲面造型技术和实体造型技术作为其主要的研究内容。计算机图形学的研究内容非常广泛,如图形硬件、图形标准、图形交互技术、光栅图形生成算法、曲线曲面造型、实体造型、真实感图形计算与显示算法、非真实感绘制,以及科学计算可视化、计算机动画、自然景物仿真、虚拟现实等。这里讨论的区域指已经表示成点阵形式的填充图形,它是象素的集合。区域可采用内点表示和边界表示两种表示形式。在内点表示中,区域内的所有象素着同一颜色。在边界表示中,区域的边界点着同一颜色。区域填充指先将区域的一点赋予指定的颜色,然后将该颜色扩展到整个区域的过程。

区域填充算法要求区域是连通的,因为只有在连通区域中,才可能将种子点的颜色扩展到区域内的其它点。区域可分为4向连通区域和8向连通区域。4向连通区域指的是从区域上一点出发,可通过四个方向,即上、下、左、右移动的组合,在不越出区域的前提下,到达区域内的任意象素;8向连通区域指的是从区域内每一象素出发,可通过八个方向,即上、下、左、右、左上、右上、左下、右下这八个方向的移动的组合来到达 区域填充的扫描线算法区域填充的递归算法原理和程序都很简单,但由于多次递归,费时、费内存,效率不高。为了减少递归次数,提高效率可以采用扫描线算法。算法的基本过程如下:当给定种子点(x,y)时,首先填充种子点所在扫描线上的位于给定区域的一个区段,然后确定与这一区段相连通的上、下两条扫描线上位于给定区域内的区段,并依次保存下来。反复这个过程,直到填充结束。

区域填充的扫描线算法可由下列四个步骤实现:

(1)初始化:堆栈置空。将种子点(x,y)入栈。

(2)出栈:若栈空则结束。否则取栈顶元素(x,y),以y作为当前扫描线。

(3)填充并确定种子点所在区段:从种子点(x,y)出发,沿当前扫描线向左、右两个方向填充,直到边界。分别标记区段的左、右端点坐标为xl和xr。

(4)并确定新的种子点:在区间[xl,xr]中检查与当前扫描线y上、下相邻的两条扫描线上的象素。若存在非边界、未填充的象素,则把每一区间的最右象素作为种子点压入堆栈,返回第(2)步。将其放在需要填充的区域,该图标决定了种子所在坐标。根据其算法填充完所需要填充的区域。下图为填充以后的图片:

三.计算机图形的几何变换

图形变换一般是指对图形的几何信息经过几何变换后产生的新的图形。图形变换既可以看做是坐标系不变而图形变动,变动后的图形在坐标系中的坐标值发生变化;也可以看做图形不懂而坐标系变动,变动后,该图形在新的坐标系下具有新的坐标值,而这两种情况本质上是一样的。

对于线框图的变换,通常一点变换作为基础,把图形的一系列顶点做几何变化后,链新的顶点即可产生新的图形。对于用参数方程描述的图形,可以通过参数方程做几何变换,实现对图形的变换。目前,我们讨论的基本上是图形拓扑关系不变的几何变换,若引进不同的几何变换算子,即可以实现改变图形拓扑关系的几何变换,由此可以产生许多形状各异,复杂的图形。下面,我们通过具体实例展示计算机图形学中的几何变换:

进行平移变换后:

进行比例变换:

进行错切变换:

进行旋转变换:

进行对称变换:

由上面的例子我们简要的展示了计算机图形学中的各种图形的基本几何变换,我们可以通过这些几何变换的组合来实现复杂图形的制作。

四.三维图形基础

用计算机生成三维形体的真是图形,是计算机图形学研究的重要内容之一。真实图形在仿真模拟,几何造型,广告影视,指挥控制,科学计算的可视化等许多领域都有广泛的应用。

当我们用笔绘图仪或者其他画线设备绘制图形时,要解决的主要是消除隐藏线问题。而当我们用光栅图形显示仪的像素阵列来绘制物体的明安图时,就必须解决消除隐藏面问题。另外,在使用光栅图形显示器绘制物体的立体图时,不仅要判断物体之间的

计算机图形学生活应用,计算机图形学的应用实例(计算机图形作业).doc相关推荐

  1. 计算机中如何理解在线与离线,计算机应用基础离线作业.doc

    计算机应用基础离线作业 <计算机应用基础>离线作业 <计算机应用基础> 法学 李贺华 一.计算题(每小题10分,共20分) 1.存储800个24×24点阵汉字字形所需的存储容量 ...

  2. 计算机图形学三大应用领域,计算机图形学作业

    计算机图形学作业题 1. 计算机中由图形的形状参数(方程或分析表达式的系数,线段的端点坐标等)加属性参数(颜色.线型等)来表示图形称图形的参数表示:枚举出图形中所有的点称图形的点阵表示,简称为图像(数 ...

  3. 计算机图形学考题答案,计算机图形学考题答案.doc

    文档介绍: .页眉. .页脚. 1 点阵法与参数法点阵法: 用具有颜色信息的点阵来表示图形的一种方法, 它强调图形由哪些点组成, 并具有什么灰度或色彩; 参数法: 以计算机中所记录图形的形状参数与属性 ...

  4. 计算机图形学透视投影知识点,计算机图形学

    计算机图形学期末复习 第一章 绪论 计算机图形学定义:计算机图形学是研究通过计算机将数据转换成图形,并在专门显示设备上显示的原理.方法和技术 第二章 计算机设备及硬件系统 知识点 阴极射线管(CRT) ...

  5. 广联达计算机图形学面试题,计算机图形学 面试题.docx

    计算机图形学 面试题 计算机图形学 面试题 第一章概述;1.计算机图形学研究的是什么?;计算机图形学研究的是通过计算机将数据转换为图形,;2.计算机图形学处理的图形有哪些?;计算机图形学处理的图形有: ...

  6. 计算机图学概念,计算机图形学(概念).doc

    计算机图形学(概念) 1.计算机图形学(Computer Graphics) 计算机图形学是研究怎样利用计算机来产生存储和处理图形的原理.方法和技术的一门学科. IEEE定义:Computer gra ...

  7. 吉林大学计算机图形学实验_计算机图形学学习笔记(一):图形学概论

    第一章 计算机图形学概论 1.1 全书概述 图形学基本知识 光栅图形学 扫描转换.区域填充.裁减.反走样.消隐 二维.三维图形变换及观察 几何造型 参数曲线曲面基本概念.Bezier曲线曲面.B样条曲 ...

  8. 是利用计算机图形学的成果,计算机图形学大会

    计算机图形学大会是计算机图形学学术交流的重要论坛,为与会学者提供广泛的学术交流平台,内容包括计算机图形学.虚拟现实.计算机动画等相关领域的最新的研究与开发成果.如中国计算机图形学大会,经中国计算机图形 ...

  9. 计算机图形学的发展与应用论文,计算机图形学毕业论文_计算机图形学发展趋势_计算机图形学有很多应用...

    有什么经典的计算机图形学论文吗? 想看计算机图形学的论文去搜这个方向的顶级会议或期刊,SIGGRAPH,EuroGraphics,TVCG,还有很多,直接搜一下都能知道,读这些顶级会议上的论文可以知道 ...

最新文章

  1. jquery ajax java上传文件_jQuery Ajax方式上传文件的方法
  2. 浮点数正则表达式_正则表达式的邮箱,手机号,身份证号,密码
  3. 前端学习(2965):路由的参数传递
  4. LeetCode 1100. 长度为 K 的无重复字符子串(滑动窗口)
  5. Spring官方阅读笔记-@Controller官方解析与实例(5.0.12)
  6. 贪心法——区间覆盖问题
  7. 枚举、宏定义enum /defint/typedef
  8. scopt解析参数实例
  9. 现场打分实时展示系统-Web版(英文名:WebShow)使用疑难问题汇编
  10. 聚焦MSI:三星玄龙骑士电竞显示器陪你畅玩一夏
  11. ​ 解决金仓数据库KingbaseES对pg模式的单机数据库插入数据时,出现日志打印的问题
  12. 现代雷达系统分析与设计---动目标检测(MTD)
  13. GNSS说第(四)讲---最新最全的IGS分析中心详情
  14. c语言图片渐入代码_如何用c语言读取图片
  15. 如何写出一份完美的BP(商业计划书)?
  16. BUUCTF 每日打卡 2021-8-18
  17. java华容道代码_Java 华容道完整源码
  18. redis requires ruby version 2.2.2的解决方案
  19. css怎样让字体变细,css怎么把字体变细?
  20. Python中10个常用的内置函数

热门文章

  1. 一则JVM memory leak解决的过程
  2. android蓝牙串口通讯
  3. 转载 Div+css浏览器兼容实例分析(一)
  4. Python全栈开发之数据类型
  5. Android-Window(一)——初识Window
  6. 记一次ZABBIX监控JMX故障
  7. Oracle数据库日常管理之数据备份,恢复及迁移 (第五讲 )
  8. 关于Unity中的帧动画组件的编写
  9. 通过 User-Agent 请求头判断设备类型
  10. 微软IT规划方法论解读