计算机图形学教案

计算机图形学教案
计算机图形学教案

教案

2008 ~2009 学年第2学期

学院(系、部) 计算机学院

教研室(实验室) 计算机科学与技术

课程名称计算机图形学

授课班级计061 、062、063、064主讲教师强赞霞

职称副教授

使用教材计算机图形学

《计算机图形学》教案(首页)

《计算机图形学》课程教案

《计算机图形学》课程教案

《计算机图形学》课程教案

计算机图形学实验

实验1 直线的绘制 实验目的 1、通过实验,进一步理解和掌握DDA和Bresenham算法; 2、掌握以上算法生成直线段的基本过程; 3、通过编程,会在TC环境下完成用DDA或中点算法实现直线段的绘制。实验环境 计算机、Turbo C或其他C语言程序设计环境 实验学时 2学时,必做实验。 实验内容 用DDA算法或Besenham算法实现斜率k在0和1之间的直线段的绘制。 实验步骤 1、算法、原理清晰,有详细的设计步骤; 2、依据算法、步骤或程序流程图,用C语言编写源程序; 3、编辑源程序并进行调试; 4、进行运行测试,并结合情况进行调整; 5、对运行结果进行保存与分析; 6、把源程序以文件的形式提交; 7、按格式书写实验报告。 实验代码:DDA: # include # include

void DDALine(int x0,int y0,int x1,int y1,int color) { int dx,dy,epsl,k; float x,y,xIncre,yIncre; dx=x1-x0; dy=y1-y0; x=x0; y=y0; if(abs(dx)>abs(dy)) epsl=abs(dx); else epsl=abs(dy); xIncre=(float)dx/(float)epsl; yIncre=(float)dy/(float)epsl; for(k=0;k<=epsl;k++) { putpixel((int)(x+0.5),(int)(y+0.5),4); x+=xIncre; y+=yIncre; } } main(){ int gdriver ,gmode ;

计算机图形学课程设计——扫雷游戏程序设计

计算机图形学课程设计——扫雷游戏程序设计

《计算机图形学》课程设计报告 VC++扫雷游戏的程序设计 专业班级: 小组成员:

指导老师: 日期:2012年12月24日 1、需求分析 本课程设计实现类似于Windows XP操作系统自带的扫雷游戏。该设计以V isual C++ 6.0为开发环境, Windows 7/XP为程序运行平台。在程序设计中,把整个雷区看成一个二维数组,把雷方块定义为具有所在雷区二维数组的行和列、当前状态、方块属性、历史状态的结构体,采用了MFC机制解决问题的方法。整个游戏程序包括了布雷、扫雷过程和结果三个阶段,在处理鼠标响应事件中伴随着GDI绘图。程序通过调试运行,实现简单的设计目标,满足扫雷游戏初学者的需要。 通过本课程设计,以便更好的巩固计算机图形学相关知识,掌握课程设计基本的方法和技巧,同时增加同学之间的团队合作精神以及培养分析问题、解决问题的能力。 2.总体设计 2.1 功能概述 扫雷游戏的游戏界面如图1所示。在这个界面中,由众多面积均等的小方块所组成的区域称之为雷区,雷区的大小由用户设置的游戏等级决定。

图1 游戏开始时,系统会在雷区中随机布下若干个地雷。安放地雷的小方块称之为雷方块,其他的称之为非雷方块。部署完毕后,系统会在其他非雷方块中填充一些数字。某一个具体数字表示与其紧邻的8个方块 中有多少雷方块。玩家可以根据这些信息去判断是否可以鼠标点击方块, 并把认为是地雷的方块打上标识。当玩家将所有地雷找出后,其余的非雷方块区域都已打开,此时游戏结束。在游戏过程中,一旦错误地打开了雷方块则立即失败,游戏结束。 游戏规则总结: ●开始:按左键开始游戏,按按钮或菜单重新开始。 ●左键:按下时,是雷则结束,非雷则显示数字。 ●数字:代表此数字周围一圈八格中雷的个数。 ●右键:奇次按下表示雷,偶数按下表示对上次的否定。 ●结束:左键按到雷结束,找出全部雷结束。 在游戏开始后,雷区上方有两个计数器。右边的计数器显示用户扫

计算机图形学课程设计书

计算机图形学课程设计 书 文档编制序号:[KKIDT-LLE0828-LLETD298-POI08]

课程设计(论文)任务书 理学院信息与计算科学专业2015-1班 一、课程设计(论文)题目:图像融合的程序设计 二、课程设计(论文)工作: 自2018 年1 月10 日起至2018 年1 月12日止 三、课程设计(论文) 地点: 2-201 四、课程设计(论文)内容要求: 1.本课程设计的目的 (1)熟悉Delphi7的使用,理论与实际应用相结合,养成良好的程序设计技能;(2)了解并掌握图像融合的各种实现方法,具备初步的独立分析和设计能力;(3)初步掌握开发过程中的问题分析,程序设计,代码编写、测试等基本方法;(4)提高综合运用所学的理论知识和方法独立分析和解决问题的能力; (5)在实践中认识、学习计算机图形学相关知识。 2.课程设计的任务及要求 1)基本要求: (1)研究课程设计任务,并进行程序需求分析; (2)对程序进行总体设计,分解系统功能模块,进行任务分配,以实现分工合作;(3)实现各功能模块代码; (4)程序组装,测试、完善系统。 2)创新要求: 在基本要求达到后,可进行创新设计,如改进界面、增加功能或进行代码优化。

3)课程设计论文编写要求 (1)要按照书稿的规格打印誊写课程设计论文 (2)论文包括封面、设计任务书(含评语)、摘要、目录、设计内容、设计小结(3)论文装订按学校的统一要求完成 4)参考文献: (1)David ,《计算机图形学的算法基础》,机械工业出版社 (2)Steve Cunningham,《计算机图形学》,机械工业出版社 (3) 5)课程设计进度安排 内容天数地点 程序总体设计 1 实验室 软件设计及调试 1 实验室 答辩及撰写报告 1 实验室、图书馆 学生签名: 2018年1月12日 摘要 图像融合是图像处理中重要部分,能够协同利用同一场景的多种传感器图像信息,输出一幅更适合于人类视觉感知或计算机进一步处理与分析的融合图像。它可明显的改善单一传感器的不足,提高结果图像的清晰度及信息包含量,有利于更为准确、更为可靠、更为全面地获取目标或场景的信息。图像融合主要应用于军事国防上、遥感方面、医学图像处理、机器人、安全和监控、生物监测等领域。用于较多也较成熟的是红外和可见光的融合,在一副图像上显示多种信息,突出目标。一般情况下,图像融合由

计算机图形学与图像处理教案

精编资料 了解图形学与图像处理的发展,应用以及当前国际国内研究的热点和重要成果;理解图形学与图像处理对图元以及图像的分析与理解的以及二维与三维形状重建等;... 图形,图像 计算机图形学与图像处理教案 学时:36,其中讲授26学时,上机10学时。 适用专业:信计专业与数学专业。 先修课程:高等数学、线性代数、数据结构、VC++或者C# 一、课程的性质、教育目标及任务: 计算机图形学与图像处理实际上是两门课程的一个综合。这是一门研究图形学与图像处理的基本理论、方法及其在智能化检测中应用的学科,是计算机科学与技术等电子信息类本科专业的专业课。 本课程侧重于对图形学的基本图元的基本生成,以及图像处理中对图像在空间域与频率域的基本处理算法的研究。并对图形学与图像处理基本理论和实际应用进行系统介绍。目的是使学生系统掌握图形学与图像处理的基本概念、原理和实现方法,学习图形学与图像处理分析的基本理论、典型方法和实用技术,具备解决智能化检测与控制中应用问题的初步能力,为在计算机视觉、模式识别等领域从事研究与开发打下扎实的基础。 二、教学内容基本要求: 1.了解图形学与图像处理的发展、应用以及当前国际国内研究的热点和重要成果; 2.理解图形学与图像处理对图元以及图像的分析与理解的以及二维与三维形状重建等; 3.掌握图形学与图像处理中最基本、最广泛应用的概念、原理、理论和算法以及基本技术和方法; 4.能够运用一门高级语言编写简单的图形学与图像处理软件,实现各种图形学与图像处理的算法。 三、主要教学内容:

学习图形学的基本概念,了解光栅显示系统的原理;掌握基本图元的生成算法:直线的生成算法、曲线的生成算法、多边形的生成算法;掌握区域填充、线段剪裁以及多边形的剪裁;掌握图元的几何变换、以及投影的基本理论。 了解图像的概念;图像数字化的基本原理:取样、量化、数字图像的表示;线性系统理论在图像变换,滤波中的应用:线性系统理论、离散图像变换、小波变换;图像编码压缩、增强,以及复原的基本方法:无失真压缩、有失真压缩、变换编码、压缩标准、图像滤波原理、复原滤波器、直方图运算、点运算;图像识别的基本原理和方法:图像分割、图像分析、图像分类; 四、学时安排 总课时72学时,图形学36学时,其中包括26个学时讲授,10个学时上机;图像处理36学时,其中包括26个学时讲授,10个学时上机; 五、参考书目: (1), Donald Hearn & M,Pauline Baker (2),< Computer Graphics with OpenGL, Third Edition> Donald Hearn & M,Pauline Baker (3),计算机图形学实用技术陈元琰,张晓竞,科学出版社 (4),计算机图形学倪明田,吴良芝北京大学出版社 (5) <>, Rafael C. Gonzalez & Richard E. Woods. Publishing House of Electronics Industry. (6) << Image Processing ,Analysis, and Machine Vision ( second Edition)>> ,Milan Sonka, V aclav Hlavac. Publishing House of People Post 第一讲图形学基本概念 重点: 了解图形学概念;掌握图形学中的几个概念:分辨率,光栅,扫描线,像素,帧缓冲器;了解图形学的基本用途;掌握图形学光栅扫描显示系统的工作原理; 难点: 光栅扫描显示系统的工作原理; 教学方法: 课堂讨论式教学方法,基于问题式以及启发式教学方法相结合。双语教学。 主要内容: 1,什么是计算机图形学? 2,计算机图形学的主要用途是什么? 3,计算机图形学中的一些基本概念: 什么是分辨率?什么是光栅?什么是光栅扫描系统的扫描线?什么是像 素?什么是帧缓冲器?什么是刷新率?

计算机图形学基础教程实验报告

湖北民族学院信息工程学院实验报告 (数字媒体技术专业用) 班级:0312413姓名:谌敦斌学号:031241318实验成绩: 实验时间:2013年10 月14 日9、10 节实验地点:数媒实验室课程名称:计算机图形学基础教程实验类型:设计型 实验题目:直线与圆的绘制 一、实验目的 通过本次实验,熟练掌握DDA、中点、Bresenham直线绘制方法和中点、Bresenham圆的画法,能够在vc环境下独立完成实验内容,逐渐熟悉opengl的语法特点,提高程序基本绘图的能力。 二、实验环境(软件、硬件及条件) Microsoft vc++6.0 多媒体计算机 三、实验内容 1.从DDA、中点、Bresenham画线法中任选一种,完成直线的绘制。 2.从中点、Bresenham画圆法中任选一种,完成圆的绘制。 四、实验方法与步骤 打开vc++6.0,新建一个工程,再在工程里面建一个.cpp文件,编辑程序,编译连接后执行即可。

程序如下 bresenham画线法: #include #include int bresenham(int x0,int y0,int x1,int y1,int color) { int x,y,dx,dy,e,i; dx=x1-x0; dy=y1-y0; e=-dx; y=y0; for(x=x0;x<=x1;x++) { putpixel(x,y,color); e+=2*dy; if(e>=0) { y++; e-=2*dx; } } return 0; } int main() { initgraph(640,480); bresenham(0,0,500,200,255); while(!kbhit()) { } closegraph(); return 0; } Bresenham画圆法: #include #include int circlepoints(int x,int y,int color) { putpixel(255+x,255+y,color); putpixel(255+y,255+x,color); putpixel(255-x,255+y,color);

计算机图形学课程教学大纲

《计算机图形学》课程教学大纲一、课程基本信息 课程代码:110053 课程名称:计算机图形学 英文名称:Computer Graphics 课程类别:专业课 学时:72 学分: 适用对象:信息与计算科学专业本科生 考核方式:考试(平时成绩占总成绩的30%) 先修课程:高级语言程序设计、数据结构、高等代数 二、课程简介 中文简介: 计算机图形学是研究计算机生成、处理和显示图形的学科。它的重要性体现在人们越来越强烈地需要和谐的人机交互环境:图形用户界面已经成为一个软件的重要组成部分,以图形的方式来表示抽象的概念或数据已经成为信息领域的一个重要发展趋势。通过本课程的学习,使学生掌握计算机图形学的基本原理和基本方法,理解图形绘制的基本算法,学会初步图形程序设计。 英文简介: Computer Graphics is the subject which concerned with how computer builds, processes and shows graphics. Its importance has been shown in people’s more and more intensively need for harmony human-machine interface. Graphics user interface has become an important part of software. It is a significant trend to show abstract conception or data in graphics way. Through the learning of this course, students could master Computer Graphics’basic theories and methods,understand graphics basic algorithms and learn how to design basic graphics program. 三、课程性质与教学目的 《计算机图形学》是信息与计算科学专业的一门主要专业课。通过本课程的学习,使学生掌握基本的二、三维的图形的计算机绘制方法,理解光栅图形生成基本算法、几何造型技术、真实感图形生成、图形标准与图形变换等概念和知识。学会图形程序设计的基本方法,为图形算法的设计、图形软件的开发打下基础。 四、教学内容及要求 第一章绪论 (一)目的与要求 1.掌握计算机图形学的基本概念; 2.了解计算机图形学的发展、应用; 3.掌握图形系统的组成。

计算机图形学 课程设计作品

《计算机图形学Visual c++版》考试作业报告 题目:计算机图形学图形画板 专业:推荐IT学长淘宝日用品店530213 班级:推荐IT学长淘宝日用品店530213 学号:推荐IT学长淘宝日用品店530213 姓名:推荐IT学长淘宝日用品店530213 指导教师:推荐IT学长淘宝日用品店530213 完成日期: 2015年12月2日

一、课程设计目的 本课程设计的目标就是要达到理论与实际应用相结合,提高学生设计图形及编写大型程序的能力,并培养基本的、良好的计算机图形学的技能。 设计中要求综合运用所学知识,上机解决一些与实际应用结合紧密的、规模较大的问题,通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握计算机图形学基本知识和算法设计的基本技能术,掌握分析、解决实际问题的能力。 通过这次设计,要求在加深对课程基本内容的理解。同时,在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。 二、设计内容推荐IT学长淘宝日用品店530213 设计一个图形画板,在这个图形画板中要实现: 1,画线功能,而且画的线要具备反走样功能。 2, 利用上面的画线功能实现画矩形,椭圆,多边形,并且可以对这些图形进行填充。 3,可以对选中区域的图形放大,缩小,平移,旋转等功能。 三、设计过程 程序预处理:包括头文件的加载,常量的定义以及全局变量的定义 #include "stdafx.h" #include "GraDesign.h" #include "GraDesignDoc.h" #include "GraDesignView.h" #include "math.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif //******自定义全局变量 int type = -1; CPoint point1; CPoint point2; CPoint temp[2];

计算机图形学课设(含所有程序图文)

计算机图形学课程设计报告 系(院):计算机科学学院 专业班级:信计11102 姓名:吴家兴 学号:201106262 指导教师:严圣华 设计时间:2014.6.16 - 2014.6.26 设计地点:10教机房

(此处目录根据自己情况可以调整改动) 一、课程设计目的 ................................................. 错误!未定义书签。 二、课程设计具体要求..................................... 错误!未定义书签。 三、需求分析与总体设计 ..................................... 错误!未定义书签。 四、详细设计与实现[含关键代码和实现界面] ... 错误!未定义书签。 五、小结......................................................................................... 错误!未定义书签。 一、课程设计目的 计算机图形学课程设计是验证、巩固和补充课堂讲授的理论知识的必要环节,通过上机实验,培养学生的自学能力、动手能力、综合运用知识解决实际问题的能力。要求学生运用计算机图形学理论与技术设计、编写、调试程序并撰写课程设计报告。 二、课程设计具体要求 1.独立完成设计并撰写课程设计报告。 2.在规定时间将程序和设计报告用附件(信计111X班XXX 图形学课设报告.RAR)发送到274548837@https://www.360docs.net/doc/74412394.html,,并上交纸质打印稿(A4纸10页左右)。 3. 课程设计报告内容包括: (1)列出设计者姓名及本人详细信息、所用开发工具; (2)程序的基本功能介绍; (3)程序实现步骤和关键算法的理论介绍; (4)关键源代码实现说明。(不要打印全部源程序!) (5)程序运行界面截图(3幅左右) (6)课设总结和自我评价。 4.《计算机图形学》课程的知识结构体系: (1)课设为期两周:总学时为40学时,2学分 (2)学生必须完成二维线画图元和二维填充图元两个大功能。二维裁剪和二维图形变换至少实现两个内容。总共不少于10个算法。 (3)程序应做到:通用性、交互性、界面友好性!

计算机图形学 图形的几何变换的实现算法教程文件

计算机图形学图形的几何变换的实现算 法

实验二 图形的几何变换的实现算法 班级 08信计 学号 59 姓名 分数 一、实验目的和要求: 1、掌握而为图形的基本几何变换,如平移,旋转,缩放,对称,错切变换;。 2、掌握OpenGL 中模型变换函数,实现简单的动画技术。 3、学习使用OpenGL 生成基本图形。 4、巩固所学理论知识,加深对二维变换的理解,加深理解利用变换矩阵可由简单图形得到复杂图形。加深对变换矩阵算法的理解。 编制利用旋转变换绘制齿轮的程序。编程实现变换矩阵算法,绘制给出形体的三视图。调试程序及分析运行结果。要求每位学生独立完成该实验,并上传实验报告。 二、实验原理和内容: . 原理: 图像的几何变换包括:图像的空间平移、比例缩放、旋转、仿射变换和图像插值。 图像几何变换的实质:改变像素的空间位置,估算新空间位置上的像素值。 图像几何变换的一般表达式:[,][(,),(,)]u v X x y Y x y = ,其中,[,]u v 为变换后图像像素的笛卡尔坐标, [,]x y 为原始图像中像素的笛卡尔坐标。这样就得到了原始图像与变换后图像的像素的对应关系。 平移变换:若图像像素点 (,)x y 平移到 00(,)x x y y ++,则变换函数为 0(,)u X x y x x ==+, 0(,)v Y x y y y ==+,写成矩阵表达式为: 00x u x y v y ??????=+???????????? 其中,x 0和y 0分别为x 和y 的坐标平移量。 比例缩放:若图像坐标 (,)x y 缩放到( ,x y s s )倍,则变换函数为:

计算机图形学课程总结教材

计算机图形学报告 前言 计算机图形学(Computer Graphics,简称CG)是一种使用数学算法将二维或三维图形转化为计算机显示器的栅格形式的科学。简单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。 其从狭义上是来说是一种研究基于物理定律、经验方法以及认知原理,使用各种数学算法处理二维或三维图形数据,生成可视数据表现的科学。广义上来看,计算机图形学不仅包含了从三维图形建模、绘制到动画的过程,同时也包括了对二维矢量图形以及图像视频融合处理的研究。由于计算机图形学在许多领域的成功运用,特别是在迅猛发展的动漫产业中,带来了可观的经济效益。另一方面,由于这些领域应用的推动,也给计算机图形学的发展提供了新的发展机遇与挑战。 计算机图形学的发展趋势包括以下几个方面: 1、与图形硬件的发展紧密结合,突破实时高真实感、高分辨率渲染的技术难点; 2、研究和谐自然的三维模型建模方法; 3、利用日益增长的计算性能,实现具有高度物理真实的动态仿真; 4、研究多种高精度数据获取与处理技术,增强图形技术的表现; 5、计算机图形学与图像视频处理技术的结合; 6、从追求绝对的真实感向追求与强调图形的表意性转变。 1、三维物体的表示 计算机图形学的核心技术之一就是三维造型三维物体种类繁多、千变万化,如树、花、云、石、水、砖、木板、橡胶、纸、大理石、钢、玻璃、塑料和布等等。因此,不存在描述具有上述各种不同物质所有特征的统一方法。为了用计算机生成景物的真实感图形,就需要研究能精确描述物体特征的表示方法。根据三维物体的特征,可将三维物体分为规则物体和非规则物体两类。 三维实体表示方法通常分为两大类:边界表示和空间分割表示,尽管并非所有的表示都能完全属于这两类范畴中的某一类。边界表示(B-reps)用一组曲面来描述三维物体,这些曲面将物体分为内部和外部。边界表示的典型例子是多边形平面片和样条曲面。空间分割表示(Space-Partitioning)用来描述物体内部性质,将包含一物体的空间区域分割为一组小的、非重叠的、连续实体(通常是立方体)。三维物体的一般空间分割描述是八叉树表示。本章主要介绍三维物体的各种表示方法及其特点。

计算机图形学

1、名词解释:直接设备、间接设备、绝对坐标设备、相对坐标设备、离散设备、连续设备、 回显、约束、网格、引力域、橡皮筋技术、草拟技术、拖动、旋转、形变。 1)直接设备:直接设备指诸如触摸屏一类用户可直接用手指指点屏幕进行操作从而实 现定位的设备。 2)间接设备:指诸如鼠标、操纵杆等用户通过移动屏幕上的光标实现定位的设备。 3)绝对坐标设备:绝对坐标设备包括数字化仪和触摸屏,它们都有绝对原点,定位坐标 相对原点来确定。绝对坐标设备可以改成相对坐标设备,如数字化仪,只要记录当前点位置与前一点位置的坐标差(增量),并将前一点看成是坐标原点,则数字化仪的定位范围也可变成无限大。 4)相对坐标设备:相对坐标设备可指定的范围可以任意大,然而只有绝对坐标设备才能 作为数字化绘图设备。 5)离散设备:键控光标则为离散设备。使用离散设备也难以实现精确定位。 6)连续设备:把手的连续运动变成光标的连续移动,鼠标、操纵杆、数字化仪等均为此 类设备。连续设备比离散设备更自然、更快、更容易用,且在不同方向上运动的自由度比离散设备大。使用离散设备也难以实现精确定位。 7)回显:回显作为一种最直接的辅助方式,大部分交互式绘图过程都要求回显。比如 在定位时,用户不仅要求所选的位置可在屏幕上显示出来,还希望其数据参数也在屏幕上显示,这样可以获得精确位置来调整定位坐标。在选择、拾取等过程中,用户也都希望能够直观地看到选择或拾取的对象以便确认。 8)约束:约束是在图形绘制过程中对图形的方向、对齐方式等进行规定和校准。约束 方式有多种,最常用的约束是水平或垂直直线约束,使用户可以轻松地绘制水平和垂直线而不必担心线的末端坐标的精度范围。另外,其他类型的约束技术用于产生

计算机图形学课程设计--图形绘制变换教案资料

计算机图形学 实验报告 课程名称 : 计算机图形学 实验名称 :图形绘制与变换学院 : 电子信息工程学院专业 : 计算机科学与技术班级 : 11计科本 01班学号 : 姓名 : 张慧 指导教师 : 王征风 二零一四年

目录 一、引言--------------------------------------------------------------------- 3 二、设计需求----------------------------------------------------------------- 4 设计目标--------------------------------------------------------------- 4设计环境--------------------------------------------------------------- 4 VC++ -------------------------------------------------------------- 4 MFC --------------------------------------------------------------- 4设计题目及要求 -------------------------------------------------------- 5总体流程图------------------------------------------------------------ 5三、课程设计原理------------------------------------------------------------- 5 实现的算法------------------------------------------------------------- 5 Bresenham算法画直线------------------------------------------------ 6中心点算法画圆和椭圆------------------------------------------------ 6图形变换的基本原理 ----------------------------------------------------- 8平移变换 ----------------------------------------------------------- 8 旋转变换 ---------------------------------------------------------- 8 比例变换 ---------------------------------------------------------- 9四、总体设计与功能实现 ------------------------------------------------------- 9 主要界面设计 ----------------------------------------------------------- 9设置颜色界面 ----------------------------------------------------------- 9界面设置代码 ------------------------------------------------------- 9 运行结果 ---------------------------------------------------------- 10二维线画图元实现 ------------------------------------------------------ 10画多边形功能的实现 --------------------------------------------------- 14画Bezier曲线功能的实现----------------------------------------------- 15

计算机图形学显示变换算法具体程序实现

数学与软件科学学院实验报告 学期:___2010 至_2011 第__一__ 学期2010年12月21日课程名称:____计算机图形学 _____ 专业:__信息与计算科学_ 2007级_5_班实验编号: 07 实验项目_____显示变换__ 指导教师__庞朝阳_ 姓名:学号: 20070605 __ 实验成绩:_____ 实验目的: (1) 了解掌握显示变换的相关知识,知道什么是平行投影和透视投影; 实验内容: (1) 知道显示变换是什么; (2) 掌握平行投影变换; (3) 掌握透视投影变换; (4) 编写并执行简单的Prolog程序,并熟悉测试或调试的方法。 实验步骤: (1)显示变换 三维空间中的物体要在二维的屏幕显示出来,必须通过投影的方式把三维物体转换成二维的平面图形。投影的方式有平行投影,透视投影。 平行投影变换 (2)平行投影变换 平行投影可根据投影方向与投影面的夹角分为:正投影和斜投影。当投影方向与投影面垂直时,为正投影;否则为斜投影。 A.正投影 1.假设投影平面垂直于Z轴,且位于Z=Z0外,则在视坐标系中任意一点 (X,Y,Z)的投影是过该点的投影线与投影平面的交点,如下图: P(x,y,z) p`(x`,y`,z`) Z0 Z 则空间点的坐标与投影坐标间关系为: x`=x , y`=y , z`=z 即 ` ` ` 1 x y z = 000 0100 0000 0001 Z . 1 x y z 2.

`` ` 1 x y z = 1000010000000001 . 1 x y z 即平面投影的变换矩阵为: Mz (平)= 10000 100 00000 1 同理可得: 在y0z 平面的投影变换矩阵为: Mx(平) = 00000 10000000001 在x0z 平面的投影变换矩阵为: My(平) = 10000 00000100 2.斜投影 如下图 求空间中任意一点D (x,y,z )在斜面ABC 上的投影。 Step1:确定一定Q,并过P 作斜面的法向量n 。 X Z Y A C B P

计算机图形学课程设计报告

计算机图形学 课程设计报告 设计课题: 专业班级: 学号: 学生姓名: 指导教师: 设计时间:2018.12.06

中南林业科技大学涉外学院理工系计算机图形学课程设计任务书

指导教师:廖宁教研室主任: 2018年12月06 日注:本表下发学生一份,指导教师一份,栏目不够时请另附页。 课程设计任务书装订于设计计算说明书(或论文)封面之后,目录页之前。 目录 一.设计目的……………………………………………………………二.设计要求…………………………………………………………… 1.构建基础类…………………………………………………… 2.构建直线类…………………………………………………… 3.构建变换类…………………………………………………… 4.构建填充类…………………………………………………… 5.构建光照类……………………………………………………三.开发环境…………………………………………………………四.详细设计 五.源程序 六.程序运行效果图 七.总结

设计目的 ?培养对图形建模、变换、投影、消隐、光照原理的理解和应用。 ?培养图形类的编程能力。 ?培养计算机图形学应用软件开发的能力。 设计要求 深入研究计算机图形学的生成原理,设计算法实现具体的类。 1.构建基础类 实现CP2类绘制二维点;实现CP3类绘制三维点;实现CRGB 类处理RGB颜色;实现CVector类处理矢量。 2.构建直线类 实现CLine类绘制任意斜率的直线、实现CALine类绘制任意斜率的反走样直线、实现CCLine类绘制任意斜率的颜色渐变直线、实现

CACLine类绘制任意斜率的反走样颜色渐变直线。 3.构建变换类 实现CTransForm完成二维和三维图形变换。 4.构建填充类 实现CFill类使用有效边表算法填充多边形、实现CZBuffer类进行深度缓冲消隐,并使用Gouraud和Phong明暗处理填充图形面片。 5.构建光照类 实现CLight类设置点光源、实现CMaterial类设置物体材质、实现CLighting类对物体实施光照。 开发环境 Viusal C++ 6.0的MFC框架。 详细设计 1.利用函数Ellipse画出人物的脸,并用给脸填充颜色。再利 用Ara画出人物的嘴巴。CRect确定人物的眼睛,给眼睛填 充颜色。利用画笔画出人物的鼻子。 2.添加ddaline()成员函数,编写自定义的成员函数ddaline ()程序,编写OnDraw()函数,画出人物的脚和脚趾。 3.添加星星star()成员函数,编写自定义的成员函数star() 程序,确定五角星的位置、大小和颜色。

计算机图形学论文计算机图形学理论与技术发展趋势研究

华北电力大学 课程论文 | | 论文题目计算机图形学理论与技术发展趋势研究 课程名称计算机图形学 | | 专业班级:学生姓名: 学号:成绩: (纸张用A4,左装订;页边距:上下2.5cm,左2.9cm, 右2.1cm)* 封面左侧印痕处装订

计算机图形学理论与技术发展趋势 研究 摘要: 计算机图形学(Computer Graphics,简称CG)是一种使用数学算法将二维或三维图形转化为计算机显示器的栅格形式的科学。简单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。 关键字:研究领域与目的发展历程应用方面 引言:计算机图形学是计算机与应用专业的专业主干课,它的重要性体现在人们越来越强烈地需要和谐的人机交互环境:图形用户界面已经成为一个软件的重要组成部分,以图形的方式来表示抽象的概念或数据(可视化)已经成为信息领域的一个重要发展趋势。 正文:计算机图形学的主要研究内容就是研究如何在计算机上表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。图形通常由点、线、面、体等几何元素和灰度、色彩、线型、线宽等非几何属性组成。从处理技术上来看,图形主要分为两类,一类是基于线条信息表示的。如工程图、等高线地图、曲面的线框图等,另一类是明暗图,也就是通常所说的真实感图形。 计算机图形学一个主要目的就是要利用计算机产生令人赏心悦目的真实感图形。为此,必须建立图形所描述场景的几何表示,再用某种光照模型,计算在假想的光源、纹理、材质属性下的光照明效果。同时,真实感图形计算的结果是以数字图像的方式提供的,计算机图形学也就和图像处理有着密切的关系。 计算机图形学的研究内容非常广泛,如图形硬件、图形标准、图形交互技术、光栅图形生成算法、曲线曲面造型、实体造型、真实感图形计算与显示算法、非真实感绘制,以及科学计算可视化、计算机动画、自然景物仿真、虚拟现实等。 1950年,第一台图形显示器作为美国麻省理工学院(MIT)旋风I号(Whirlwind I)计算机的附件诞生了。该显示器用一个类似于示波器的阴极射线管(CRT)来显示一些简单的图形。1958年美国Calcomp公司由联机的数字记录仪发展成滚筒式绘图仪,GerBer公司把数控机床发展成为平板式绘图仪。在整个50年代,只有电子管计算机,用机器语言编程,主要应用于科学计算,为这些计算机配置的图形设备仅具有输出功能。计算机图形学处于准备和酝酿时期,并称之为:“被动式”图形学。到50年代末期,MIT的林肯实验室在“旋风”计算机上开发SAGE空中防御体系,第一次使用了具有指挥和控制功能的CRT显示器,操作者可以用笔在屏幕上指出被确定的目标。与此同时,类似的技术在设计和生产过程中也陆续得到了应用,它预示着交互式计算机图形学的诞生。 1962年,MIT林肯实验室的Ivan E.Sutherland 发表了一篇题为“Sketchpad:一个人机交互通信的图形系统”的博士论文,他在论文中首次使用了计算机图形学“Computer Graphics”这个术语,证明了交互计算机图形学是一个可行的、有用的研究领域,从而确定了计算机图形学作为一个崭新的科学分支的独立地位。他在论文中所提出的一些基本概念和技术,如交互技术、分层存储符号的数据结构等至今还在广为应用。1964年MIT的教授Steven A. Coons提出了被后人称为超限插值的新思想,通过插值四条任意的边界曲线来构造曲面。同在60年代早期,法国雷诺汽车公司的工程师Pierre Bézier发展了一套被后人称为Bézier曲线、曲面的理论,成功地用于几何外形设计,并开发了用于汽车外形设计

重庆大学计算机图形学课程试题及答案资料

重庆大学 计算机图形学 课程试卷 2007 ~2008 学年 第 一 学期 开课学院: 软件学院 课程号:09005130 考试日期: 考试方式: 考试时间: 120 分钟 一、 选择题(每题2分,共30分) 1. 灰度等级为16级,分辨率为1024*1024的显示器,至少需要的帧缓存容量为( A ) A ) 512KB; B ) 1MB C ) 2MB; D )3MB 2. 使用下列二维图形变换矩阵: T =???? ??????100001010 产生图形变换的结果为 ( B ) A )绕原点逆时针旋转90度; B )以Y=X 为对称轴的对称图形; C )以Y=-X 为对称轴的对称图形; D )绕原点顺时针旋转90度。 3. 下述绕坐标原点逆时针方向旋转a 角的坐标变换矩阵中哪一项是错误的? ( A ) | A B | | C D | A) -cos a; B)-sin a; C)sin a; D)cos a 4. 在多边形的逐边裁剪法中,对于某条多边形的边(其方向为从端点S 到端点P )与 某条裁剪线(即窗口的某一边)的比较结果共有以下四种情况,分别需输出一些顶点。请问哪种情况下输出的顶点是错误的?( C ) A) S 和P 均在可见一侧,则输出P B) S 和P 均在不可见一侧,则输出0个顶点 C) S 在可见一侧,P 在不可见一侧,则输出S 和线段SP 与裁剪线的交点 D) S 在不可见一侧, P 在可见一侧,则输出线段SP 与裁剪线的交点和P 5. 透视投影中的灭点最多可以有几个?( D ) A) 无限; B) 1; C) 2; D) 3 6. 在简单光反射模型中,由物体表面上点反射到视点的光强是下述哪几项之和? ( B ) (1)环境光的反射光强;(2)理想漫反射光强;(3)镜面反射光强;(4)物体间的反射光强。 A )(1)和(2) B )(1)(2)和(3) C )(1)和(3) D )(1)(2)(3)和(4) 7. 使用下列二维图形变换矩阵: 将产生变换的结果为( C ) A ) 图形沿X 坐标轴方向放大2倍; B ) 图形放大2倍,同时沿X 、Y 坐标轴方向各移动1个绘图单位; C ) 图形沿X 坐标轴方向放大2倍,同时沿Y 坐标轴方向平移1个绘图单位; D ) 图形沿X 坐标轴方向放大2倍,同时沿X 、Y 坐标轴方向各平移1个绘图单位。 8. 下列有关平面几何投影的叙述语句中,正确的论述为( B ) A )在平面几何投影中,若投影中心移到距离投影面无穷远处,则成为透视投影; B )平行投影能真实地反映物体的精确的尺寸和形状; C )透视投影变换中,一组平行线投影在与之平行的投影面上,可以产生灭点; D )在三维空间中的物体进行透视投影变换,可能产生三个或者更多的主灭点。 9. 下面关于深度缓存消隐算法(Z-Buffer)的论断哪一条不正确? ( B ) A )深度缓存算法需要开辟两个与图像大小相等的缓存数组 B )深度缓存算法不能用于处理对透明物体的消隐 C )深度缓存算法不能处理空间多边形的相贯与交叉重叠等情况 D )深度缓存算法中不需要对多边形进行排序 10. 在扫描转换多边形中,扫描线与多边形交点的计数,下述哪一个不正确? ( A ) A) 当扫描线与多边形交于某顶点时且该点为局部最高点时,计数2次 B) 当扫描线与多边形交于某顶点时且该点的两个邻边在扫描线的一侧时,计数0或2次 C) 当扫描线与多边形交于某顶点时且该点的两个邻边在扫描线的两侧时,计数1 命题人: 组题人: 审题人: 命题时间: 教务处制 学院 专业、班 年级 学号 姓名 公平竞争、诚实守信、严肃考纪、拒绝作弊 封 线 密 T =

计算机图形学课程示范性教学设计

软件学院《计算机图形学》课程示范性教学设计 一、本课程教学方法 1. 教学方法 概述:教学手段以多媒体教学为主、板书教学为辅,考虑到本课程内容多、学时少的特点,教学方法采用基础算法详细讲解、高级应用以专题讲座形式介绍的金字塔式教学方法,即对本科生应掌握的基本内容先详细介绍,以便学生上机时可以直接动手编程实现,然后对后面稍难一些的内容采用专题讲座的形式,即每次课介绍一个专题,既有“点”的深度,又有“面”的广度,点面结合,相辅相成,以达到在有限的学时内、开阔学生视野、提高学生学习兴趣的目的。 (1) 从宏观上介绍计算机图形学的研究内容及其应用领域。 (2) 选择一些常用的、经典的计算机图形学算法详细介绍。 (3)为了加深学生对算法实现过程的理解,强调理论联系实际的重要性,通过编程演示算法的实现结果,并借助于动画软件Flash演示算法的执行过程。 2.建议开课学期:第5学期 3.建议教学形式与教学方法:多媒体授课 二、各部分重点及难点 概述:本课程主要内容包括计算机图形学的研究内容、发展与应用,图形输入输出设备,图形显示原理,图形软件标准,基本图形生成算法,图形几何变换与裁剪,自由曲线和曲面,三维实体造型,分形几何造型,分形艺术,隐藏面消除,光照模型,颜色模型,光线跟踪,纹理细节模拟,常用的计算机动画技术和软件等。 第1章绪论 主要知识点:计算机图形学的研究内容及其与相关学科的关系,计算机图形学的发展与应用 主要能力点:通过阅读文献了解计算机图形学软硬件方面的最新研究进展,提高跟踪学科前沿能力、把握学科方向能力、进行文献检索、文献阅读和文献综述的能力。 主要素质点:科研工作人员的基本素质——把握学科方向、文献检索、阅读和综述 重点:计算机图形学的研究内容 难点:计算机图形学与相关学科的关系 第2章图形输入输出设备 主要知识点:交互式计算机图形处理系统的组成,图形输入输出设备,显示器分类,光栅扫描图形显示原理 主要能力点:通过阅读文献了解在图形输入、输出设备方面的最新研究进展,提高跟踪学科前沿能力、把握学科方向能力、进行文献检索、文献阅读和文献综述的能力。 主要素质点:科研工作人员的基本素质——把握学科方向、文献检索、阅读和综述

相关文档
最新文档