当前位置:文档之家› 心得体会 计算机图形学学习心得

心得体会 计算机图形学学习心得

计算机图形学学习心得

计算机图形学学习心得篇1

一、实验目的

了解梁友栋算法和编码裁剪算法并利用该算法思想实现某一图形或直线段的裁剪,加深对梁友栋算法和编码裁剪算法的理解。

二、实验内容

利用梁友栋算法(参数化线段裁剪算法)或编码裁剪算法变成实现对直线段或者任一图形的裁剪。

三、实验原理

梁友栋算法简介如下:

设线段两端点坐标分别为P1(x1,y1)和P2(x2,y2),则其参数化直线方程可写成下列形式:

0u1

其中,参数p,q定义为:

p1﹦-x, q1﹦x1﹣Wxl

p2﹦x, q2﹦Wxr﹣x1

p3﹦-y, q3﹦y1﹣Wyb

p4﹦y, q4﹦Wyt﹣y1

四、实验环境

Windows XP VisualC++6.0

五、实验步骤

盔入VisualC++6.0环境,在菜单中选择FileNewProjects,然后选择MFCAppWizard(exe)新建一个工程文件单击OK,在弹出的对话框中选择Single document,单击Finish,在VisualC++6.0编程界面中选择CMyView单击右键,选择Add Member Function,在弹出的对话框中添写void和函数名。

// 图形裁减View.cpp : implementation of the CMyView class

//

#include stdafx.h

#include 图形裁减.h

#include 图形裁减Doc.h

#include 图形裁减View.h

#ifdef _DEBUG

#define new DEBUG_NEW

#undef THIS_FILE

#endif

//////////////////////////////////////////////////////////////////////////// /

// CMyView

IMPLEMENT_DYNCREATE(CMyView, CView)

BEGIN_MESSAGE_MAP(CMyView, CView)

//{{AFX_MSG_MAP(CMyView)

// NOTE - the ClassWizard will add and remove mapping macros here.

// DO NOT EDIT what you see in these blocks of generated code!

//}}AFX_MSG_MAP

// Standard printing commands

ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)

ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)

ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)

END_MESSAGE_MAP

//////////////////////////////////////////////////////////////////////////// /

// CMyView construction/destruction

CMyView::CMyView

{

// TODO: add construction code here

}

CMyView::~CMyView

{

}

BOOL CMyView::PreCreateWindow(CREATESTRUCT cs)

{

// TODO: Modify the Window class or styles here by modifying

// the CREATESTRUCT cs

return CView::PreCreateWindow(cs);

}

//////////////////////////////////////////////////////////////////////////// /

// CMyView drawing

void CMyView::OnDraw(CDCx pDC)

{

ASSERT_VALID(pDoc);

LINECLIP;

// TODO: add draw code for native data here

}

//////////////////////////////////////////////////////////////////////////// /

// CMyView printing

BOOL CMyView::OnPreparePrinting(CPrintInfox pInfo)

{

// default preparation

return DoPreparePrinting(pInfo);

}

void CMyView::OnBeginPrinting(CDCx /xpDCx/, CPrintInfox /xpInfox/)

{

// TODO: add extra initialization before printing

}

void CMyView::OnEndPrinting(CDCx /xpDCx/, CPrintInfox /xpInfox/) {

// TODO: add cleanup after printing

}

//////////////////////////////////////////////////////////////////////////// /

// CMyView diagnostics

#ifdef _DEBUG

void CMyView::AssertValid const

{

CView::AssertValid;

}

void CMyView::Dump(CDumpContext dc) const

{

CView::Dump(dc);

}

CMyDocx CMyView::GetDocument // non-debug version is inline

{

ASSERT(m_pDocument-IsKindOf(RUNTIME_CLASS(CMyDoc)));

return (CMyDocx)m_pDocument;

}

#endif //_DEBUG

//////////////////////////////////////////////////////////////////////////// /

// CMyView message handlers

void CMyView::LINECLIP

{

//使用梁友栋-Basky直线裁剪算法

//设置不同颜色画笔

CPen newpen1(PS_SOLID,0,RGB(183,198,0));//窗口颜色

CPen newpen2(PS_SOLID,0,RGB(0,0,1));//待裁剪线段颜色

CPen newpen3(PS_SOLID,0,RGB(160,1,255));//裁剪后可见线段颜色

//辅助变量

float p[4],q[4],u[4];

float u1,u2,r[4];

int x1,y1,x2,y2,x0,y0,x3,y3;

int dx,dy,k;

//绘制裁剪窗口

pDC-SelectObject(newpen1);

pDC-Rectangle(wxl,wyt,wxr,wyb);

//绘制被裁剪线段

pDC-SelectObject(newpen2);

pDC-MoveTo(x1,y1);

pDC-LineTo(x2,y2);

//计算

{

{

}

else

{

if(p[k]0)

else

}

}

//参数在0-1之间变化,超出为无效参数

{

if(p[k]0)

else

}

//满足条件为可见部分线段

{

//计算可见部分线段

//绘制窗口内可见线段

pDC-SelectObject(newpen3);

pDC-MoveTo(x0,y0);

pDC-LineTo(x3,y3);

}

}

六、实验结果与分析

本图中矩形内紫色线段为裁剪之后可见线段,外部的黑色线段部分为带裁剪部分。

七、实验中遇到的问题及解决方法

1.对于VisualC++6.0的工程文件即:MFC的环境不熟悉,开始时编写视图View下的程序在步骤上尚有困难,不知道该怎样使用该环境,再参考了一些相关书籍和求教于其他人之后,这个问题得到了解决。

2.最初只是在后面添加了自编程序,并没有在OnDraw里面加入

该程序的调用,程序编译没有错误,但运行后只是一个窗口,并没有图像,后来在同学的帮助下发现了这个错误,改正后程序顺利运行。

3.程序编写过程中的语法不再是问题,偶尔有疏忽的时候,编译时一般就能改正了。

4.在程序编写时对于点的坐标值不是很注意,随意定义了一些点,造成直线画到了图形的外面。

计算机图形学学习心得篇2

酒算机图形学是利用计算机研究图形的表示、生成、处理和显示的科学。简单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。图形通常由点、线、面、体等几何元素和灰度、色彩、线型、线宽等非几何属性组成。从处理技术上来看,图形主要分为两类,一类是基于线条信息表示的,如工程图、等高线地图、曲面的线框图等,另一类是明暗图,也就是通常所说的真实感图形。经过30多年的发展,计算机图形学已成为计算机科学中最为活跃的分支之一,并得到广泛的应用。

在科技高度发展的今天,计算机在人们之中的作用越来越突出。而C语言作为一种计算机的语言,我们学习它,有助于我们更好的了解计算机,更好的学习计算机图形学。因此,C语言对我们计算机图形学的学习尤其重要,而我们也需要一定的C语言基础知识。

在这个学期里,我们班级的学生在计算机图形学老师何老师的带领下进行了计算机图形学的上机实践学习。在这之前,我们已经对C

语言这门课程学习了一个学期,对其有了一定的了解和掌握,这对我们计算机图形的学习打下了良好的基础。但是,万事开头难,在计算机图形学的上机实践的过程中还是遇到了一些问题。

上机实验是学习计算机图形学必不可少的实践环节,上课学习到的知识都需要通过C语言编程做出程序来真正掌握它。对于计算机图形学的学习目的,可以概括为图形的表示、图形的生成、图形的处理和显示,这些都必须通过充分的实际上机操作才能完成。我们上机实验总共包括七个,每个实验之前老师都会给我们做详细的介绍,具体的操作步骤老师也给了一个参考书,这样的话,我们在上机过程中也省去了很多麻烦,节约了很多时间。因此,我们才有了充裕的时间来理解实验原理,并结合自己的想象力,编写出属于自己的程序。

学习计算机图形学除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。因为学时所限,课程安排在周四晚上统一上机实验,所以我们需要有效地利用上机实验的机会,尽快掌握理解计算机图形学的基础知识,为今后的继续学习打下一个良好的基础。课程上机实验的目的,不仅仅是验证教材和讲课的内

容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:

居深对课堂讲授内容的理解

课堂上要讲授许多关于计算机图形学的知识和原理,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。然而要使用C程序这个工具解决实际学习中的问题,通过多次上机练习,,在理解的基

础上就会自然而然地掌握计算机图形学图形生成的算法和处理方式。对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,编写出来的程序无法运行,这是由于大部分学生C语言基础只是不够牢固的原因。

学习计算机图形学不能停留在学习它的程序语言,而是利用学到的知识编写C语言程序来验证自己的想法,深入理解图形生成的原理,解决实际问题。即把C语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。只有通过上机才能检验自己是否掌握C语言、自己编写的程序是否能够正确运行、对计算机的理解是否到位。

通过上机实验来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。但是在程序设计领域里这是一定要克服的传统的、错误的想法。因为在这种思想支配下,可能你会想办法去掩盖程序中的错误,而不是尽可能多地发现程序中存在的问题。而且计算机图形学上机实验是依附在C语言编程基础之上的,我们对图形生成算法的理解要通过C程序才能体现出来。

通过这次为数不多的几天计算机实践学习,我们巩固了一些关于C语言的知识,理解了我们计算机图形学的理论知识,这对我们将来到社会工作将会有莫大的帮助。同时它让我知道计算机图形的强大和瑰丽之处,虽然我们学的都是基本的生成算法,但是通过老师展示的几个计算机图形学高级程序,我们才了解到计算机图形学可以做出非常华丽的视觉效果,而且只要你努力,任何东西都不会太难。

最后,还是很庆幸能学到计算机图形学这样的一门课程,在学习

本课程的同时,已经涉及了很多的学科,让我们更有能力成为全方位、多特色的新世纪人才。编程能力、思维能力都获得了提高,真是一举多得。

计算机图形学学习心得篇3

酒算机图形学是20世纪60年代以后,随着计算机技术(包括计算机硬件技术和软件技术)的发展和完善而形成的一门新兴学科。至今,计算机图形学已在建筑,机械,电子,造船,航空,汽车,轻工,广告,艺术等领域得到了广泛的应用。可以说,它几乎影响了所有涉及领域,冲击和改变着传统的设计模式。一打开计算机,人们首先接触到的就是计算机图形学的内容,因为计算机的用户界面已广泛使用了计算机图形技术。事实上,计算机图形技术已深入到各个领域。计算机图形的生成一般包括两种方法:程序绘图和交互绘图。所谓程序绘图,就是先用计算机语言(例如C语言)编好绘图程序,然后运行该程序并绘出图形。而交互绘图则是应用交互式图形软件,通过交互命令(键盘命令,菜单命令等)由计算机生成图形。程序绘图是交互式绘图的基础。

掘单地说,计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。图形通常由点、线、面、体等几何元素和灰度、色彩、线型、线宽等非几何属性组成。从处理技术上来看,图形主要分为两类,一类是基于线条信息表示的,如工程图、等高线地图、曲面的线框图等,另一类是明暗图,也就是通常所说的真实感图形。计算机图形

学一个主要的目的就是要利用计算机产生令人赏心悦目的真实感图形。为此,必须建立图形所描述的场景的几何表示,再用某种光照模型,计算在假想的光源、纹理、材质属性下的光照明效果。所以计算机图形学与另一门学科计算机辅助几何设计有着密切的关系。事实上,图形学也把可以表示几何场景的曲线曲面造型技术和实体造型技术作为其主要的研究内容。同时,真实感图形计算的结果是以数字图像的方式提供的,计算机图形学也就和图像处理有着密切的关系。

这学期我们主要学习了MFC图形编程,学习了《VC++图形程序设计基础》。从中学习了如何建立MFC项目和简单的输入与输出。

三视图即主视图、俯视图、侧视图是分别将三维立体对正面、水平面和侧面作正投影得到的三个基本视图。

用计算机绘制立体图的三视图的具体步骤:

卡立三维空间坐标系,这里定义一个右手直角坐标系,即z轴正向朝上。在这个定义的坐标系下,确定三维立体上各点的位置坐标,同时引入齐次坐标。求出所作变换相应的四阶变换矩阵,一般根据变换前后图形上点的几何关系或由已知的变换矩阵求得。

揩所作变换写出矩阵表示式,通过运算求得三维立体上各点(x, y, z)竟变换后的相应点(x , y)或(y , z)或(x , z),一般是二维点的齐次坐标。

有变换后的所有二维点绘出三维立体投影后的平面图形,即为主视图、俯视图或侧视图。

在右手直角坐标系中,将三维立体向xOz面(正面V)作正投影,得到主视图。由投影变换前后三维立体上点到主视图上点的关系,可

知此投影变换的变换矩阵为:

10

Tv:主视图的投影变换矩阵,简称投影矩阵。

若已知三维立体上n 个点(xi , yi , zi),则各点的齐次坐标可写成n4 阶矩阵,主视图的投影变换矩阵表示式为:

0010 xyz10001x0z1nnnnn

三维立体向xOy面(水平面H)作正投影得到俯视图。

为了使俯视图与主视图也画在一个平面内,就要使H面绕x轴负方向转90o,此旋转变换矩阵为:

因此俯视图的投影变换矩阵为上面三个变换矩阵的连乘积,即:俯视图的投影变换矩阵表示为:

揩三维立体向yOz面(侧面W)作正投影得到俯视图。

第3 / 4页

为了使侧视图与主视图间有一定的间距,还要使W面沿负x方向平移一段距离x0。其变换矩阵为:

因此侧视图的投影变换矩阵为上面三个变换矩阵的连乘积,即:先让三维立体作投影面,然后旋转投影面得到平摊在同一个平面上的三个视图。也可以先把三维立体作旋转,然后再向投影面作正投影得到同样的三视图。

通过这这们课的学习,让我对计算机的应用有了更新的认识,对于图形学中基本图形的生成算法有了一定的了解,图形学是计算机科学与技术学科的活跃前沿学科,被广泛的应用到生物学、物理学、化

学、天文学、地球物理学、材料科学等领域。我深深感到这门学科涉及的领域之广是惊人的,可以说博大精深。在这个计算机的时代什么都要用到计算机技术,图形也是我们生活中重要的部分,好学好图形学为我以后的就业课成学习及新兴科学技术的运用打下了坚实基础。更为我以后的就业打下了坚实的良好基础,使我对未来充满了信心。感谢向华萍老师对我们的认真指导。

内容仅供参考

计算机图形学实验报告

《计算机图形学》实验报告姓名:郭子玉 学号:2012211632 班级:计算机12-2班 实验地点:逸夫楼507 实验时间:15.04.10 15.04.17

实验一 1 实验目的和要求 理解直线生成的原理;掌握典型直线生成算法;掌握步处理、分析实验数据的能力; 编程实现DDA 算法、Bresenham 中点算法;对于给定起点和终点的直线,分别调用DDA 算法和Bresenham 中点算法进行批量绘制,并记录两种算法的绘制时间;利用excel 等数据分析软件,将试验结果编制成表格,并绘制折线图比较两种算法的性能。 2 实验环境和工具 开发环境:Visual C++ 6.0 实验平台:Experiment_Frame_One (自制平台) 3 实验结果 3.1 程序流程图 (1)DDA 算法 是 否 否 是 是 开始 计算k ,b K<=1 x=x+1;y=y+k; 绘点 x<=X1 y<=Y1 绘点 y=y+1;x=x+1/k; 结束

(2)Mid_Bresenham 算法 是 否 否 是 是 是 否 是 否 开始 计算dx,dy dx>dy D=dx-2*dy 绘点 D<0 y=y+1;D = D + 2*dx - 2*dy; x=x+1; D = D - 2*dy; x=x+1; x

3.2程序代码 //-------------------------算法实现------------------------------// //绘制像素的函数DrawPixel(x, y); (1)DDA算法 void CExperiment_Frame_OneView::DDA(int X0, int Y0, int X1, int Y1) { //----------请实现DDA算法------------// float k, b; float d; k = float(Y1 - Y0)/float(X1 - X0); b = float(X1*Y0 - X0*Y1)/float(X1 - X0); if(fabs(k)<= 1) { if(X0 > X1) { int temp = X0; X0 = X1; X1 = temp; }

研究生计算机图形学课程室内场景OpenGL--实验报告Word版

《高级计算机图形学》实验报告 姓名:学号:班级: 【实验报告要求】 实验名称:高级计算机图形学室内场景 实验目的:掌握使用OpenGL生成真实感复杂对象的方法,进一步熟练掌握构造实体几何表示法、扫描表示法、八叉树法、BSP树法等建模方法。 实验要求:要求利用OpenGL生成一个真实感的复杂对象及其周围场景,并显示观测点变化时的几何变换,要具备在一个纹理复杂的场景中漫游功能。要求使用到光线跟踪算法、 纹理映射技术以及实时绘制技术。 一、实验效果图 图1:正面效果图

图2:背面效果图 图4:背面效果图

图4:室内场景细节效果图 图5:场景角度转换效果图

二、源文件数据代码: 共6个文件,其实现代码如下: 1、DlgAbout.cpp #include "StdAfx.h" #include "DlgAbout.h" CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD) { } void CAboutDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); } BEGIN_MESSAGE_MAP(CAboutDlg, CDialog) END_MESSAGE_MAP() 2、FormCommandView.cpp #include "stdafx.h" #include "Tool.h" #include "MainFrm.h" #include "FormCommandView.h" #include "ToolDoc.h" #include "RenderView.h" // Download by https://www.doczj.com/doc/d212871193.html, #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif // CFormCommandView IMPLEMENT_DYNCREATE(CFormCommandView, CFormView) CFormCommandView::CFormCommandView() : CFormView(CFormCommandView::IDD) { //{{AFX_DATA_INIT(CFormCommandView)

计算机图形学试题1

计算机图形学测试题 (一) 1.能在人的视觉系统中产生视觉印象的客观对象,包括自然景物、拍摄到的图片、用数学方法描述的图形等等,都是计算机(A)学的研究对象。 A.图形B.语言C.技术D.地理 2.刻画对象的轮廓、形状等,构成了图形的(B)要素。 A.化学B.几何C.技术D.语言 3.刻画对象的颜色、材质等,构成了图形的非(C)要素。 A.化学B.技术C.几何D.语言 4.点阵表示法枚举出图形中所有的点,简称为数字(D)。 A.图形B.图元C.像素D.图像 5.参数表示法包括了形状参数和属性参数等,简称为(A)。 A.图形B.图元C.像素D.图像 6.计算机辅助设计、科学计算可视化、计算机艺术、地理信息系统、计算机动画及广告影视创作、电脑游戏、多媒体系统、虚拟现实系统等,都是计算机(B)学的实际应用。 A.图像B.图形C.地理D.技术 7.科学计算可视化(Scientific Visualization)在直接分析大量的测量数据或统计数据有困难时可以实现用(C)表现抽象的数据。 A.技术B.几何C.图形D.像素 8.计算机艺术软件工具PhotoShop、CorelDraw、PaintBrush等具有创作轻松、调色方便等(D),但也有难以容入人的灵感等缺点。 A.历史B.现实C.缺点D.优点 9.3D MAX, MAYA等等都是很好的计算机(A)创作工具。 A.动画B.图形C.图像D.像素 10.电子游戏的实时性、逼真性,蕴含了大量先进的计算机(B)处理技术。 A.金融B.图形C.商业D.交易 11.在计算机控制下,对多种媒体信息进行生成、操作、表现、存储、通信、或集成的处理,总要包括文本、(C)、图像、语音、音频、视频、动画等。 A.文本B.语音C.图形D.动画 12.虚拟现实(Virtual Reality)或称虚拟环境(Virtual Environment)是用(D)技术来生成一个逼真的三维视觉、听觉、触觉或嗅觉等感觉世界。 A.控制B.机械C.物理D.计算机 13.媒体包括“连续媒体”和“离散媒体”,计算机总是要把连续的媒体(A)为离散的信息。 A.转换B.计算C.控制D.组合 14.虚拟现实可以让用户从自己的视点出发,利用自然的技能和某些设备对这一生成的(B)世界客体进行浏览和交互考察。 A.现实B.虚拟C.物理D.历史 (二) 15.电子束轰击荧光屏产生的亮点只能持续极短的时间,为了产生静态的不闪烁的图像,电子束必须周期性地反复扫描所要绘制的图形,这个过程称为(C)。 A.启动B.驱动C.刷新D.更新 16.阴极射线管(CRT)的电子枪发射电子束,经过聚焦系统、加速电极、偏转系统,轰击到荧光屏的不同部位,被其内表面的荧光物质吸收,发光产生可见的(D)。 A.电子B.物质C.光线D.图形 17.像素(Pixel:Picture Cell)是构成屏幕(A)的最小元素。 A.图像B.图框C.线D.点 18.分辨率(Resolution)是指在水平或竖直方向单位长度上能识别的最大(B)个数,单位通常为dpi(dots per inch)。 A.图像B.像素C.线D.圆 19.假定屏幕尺寸一定,常用整个屏幕所能容纳的像素个数描述屏幕的(C),如640*480,800*600,1024*768,1280*1024等等。 A.大小B.容量C.分辨率D.亮度 (三) 20.容器坐标系包括坐标原点、坐标度量单位和坐标轴的长度与(D)。

计算机图形学实验报告 (2)

中南大学信息科学与工程学院 实验报告实验名称 实验地点科技楼四楼 实验日期2014年6月 指导教师 学生班级 学生姓名 学生学号 提交日期2014年6月

实验一Window图形编程基础 一、实验类型:验证型实验 二、实验目的 1、熟练使用实验主要开发平台VC6.0; 2、掌握如何在编译平台下编辑、编译、连接和运行一个简单的Windows图形应用程序; 3、掌握Window图形编程的基本方法; 4、学会使用基本绘图函数和Window GDI对象; 三、实验内容 创建基于MFC的Single Document应用程序(Win32应用程序也可,同学们可根据自己的喜好决定),程序可以实现以下要求: 1、用户可以通过菜单选择绘图颜色; 2、用户点击菜单选择绘图形状时,能在视图中绘制指定形状的图形; 四、实验要求与指导 1、建立名为“颜色”的菜单,该菜单下有四个菜单项:红、绿、蓝、黄。用户通过点击不同的菜单项,可以选择不同的颜色进行绘图。 2、建立名为“绘图”的菜单,该菜单下有三个菜单项:直线、曲线、矩形 其中“曲线”项有级联菜单,包括:圆、椭圆。 3、用户通过点击“绘图”中不同的菜单项,弹出对话框,让用户输入绘图位置,在指定位置进行绘图。

五、实验结果: 六、实验主要代码 1、画直线:CClientDC *m_pDC;再在OnDraw函数里给变量初始化m_pDC=new CClientDC(this); 在OnDraw函数中添加: m_pDC=new CClientDC(this); m_pDC->MoveTo(10,10); m_pDC->LineTo(100,100); m_pDC->SetPixel(100,200,RGB(0,0,0)); m_pDC->TextOut(100,100); 2、画圆: void CMyCG::LineDDA2(int xa, int ya, int xb, int yb, CDC *pDC) { int dx = xb - xa; int dy = yb - ya; int Steps, k; float xIncrement,yIncrement; float x = xa,y= ya; if(abs(dx)>abs(dy))

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

一、设计内容与要求 1.1、设计题目 算法实现时钟运动 1.2、总体目标和要求 (1)目标:以图形学算法为目标,深入研究。继而策划、设计并实现一个能够表现计算机图形学算法原理的或完整过程的演示系统,并能从某些方面作出评价和改进意见。通过完成一个完整程序,经历策划、设计、开发、测试、总结和验收各阶段,达到巩固和实践计算机图形学课程中的理论和算法;学习表现计算机图形学算法的技巧;培养认真学习、积极探索的精神。 (2)总体要求:策划、设计并实现一个能够充分表现图形学算法的演示系统,界面要求美观大方,能清楚地演示算法执行的每一个步骤。(3)开发环境:Viusal C++ 6.0 1.3、设计要求 内容: (1)掌握动画基本原理; (2)实现平面几何变换; 功能要求: (1)显示时钟三个时针,实现三根时针间的相互关系;

(2)通过右键菜单切换时钟背景与时针颜色; 1.4设计方案 通过使用OpenGL提供的标准库函数,综合图形学Bresenham画线和画圆的算法,OpenGL颜色模型中颜色表示模式等实现指针式时钟运动,并通过点击右键菜单实习时钟背景与时针颜色的转换。根据Bresenham画线和画圆的算法,画出时钟的指针和表盘。再根据OpenGL颜色模型定义当前颜色。设置当时钟运行时交换的菜单,运行程序时可变换时钟背景与时针的颜色。最后再设置一个恢复菜单恢复开始时表盘与指针的颜色。

二、总体设计 2.1、过程流程图

2.2、椭圆的中点生成算法 1、椭圆对称性质原理: (1)圆是满足x轴对称的,这样只需要计算原来的1/2点的位置;(2)圆是满足y轴对称的,这样只需要计算原来的1/2点的位置; 通过上面分析可以得到实际上我们计算椭圆生成时候,只需要计算1/4个椭圆就可以实现对于所有点的生成了。 2、中点椭圆算法内容: (1)输入椭圆的两个半径r1和r2,并且输入椭圆的圆心。设置初始点(x0,y0)的位置为(0,r2); (2)计算区域1中央决策参数的初始值 p = ry*ry - rx*rx*ry + 1/4*(rx*rx); (3)在区域1中的每个Xn为止,从n = 0 开始,直到|K|(斜率)小于-1时后结束; <1>如果p < 0 ,绘制下一个点(x+1,y),并且计算 p = p + r2*r2*(3+2*x); <2>如果P >=0 ,绘制下一个点(x+1,y-1),并且计算 p = p + r2*r2*(3+2*point.x) - 2*r1*r1*(y-1) (4)设置新的参数初始值; p = ry*ry(X0+1/2)*(X0+1/2) + rx*rx*(Y0-1) - rx*rx*ry*ry; (5)在区域2中的每个Yn为止,从n = 0开始,直到y = 0时结束。 <1>如果P>0的情况下,下一个目标点为(x,y-1),并且计算 p = p - 2rx*rx*(Yn+1) + rx*rx;

《计算机图形学》练习试题及参考答案(七)

《计算机图形学》模拟试卷一 一、【单项选择题】(本大题共10小题,每小题2分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在答题卷相应题号处。 1、计算机图形学与计算机图像学(图像处理)的关系是()。 [A] 计算机图形学是基础,计算机图像学是其发展 [B] 不同的学科,研究对象和数学基础都不同,但它们之间也有可相互转换部分 [C] 同一学科在不同场合的不同称呼而已 [D] 完全不同的学科,两者毫不相干 2、多边形填充算法中,错误的描述是()。 [A] 扫描线算法对每个象素只访问一次,主要缺点是对各种表的维持和排序的耗费较大 [B] 边填充算法基本思想是对于每一条扫描线与多边形的交点,将其右方象素取补 [C] 边填充算法较适合于帧缓冲存储器的图形系统 [D] 边标志算法也不能解决象素被重复访问的缺点 3、在多边形的逐边裁剪法中,对于某条多边形的边(方向为从端点S到端点P)与某条裁剪线(窗口的某一边)的比较结果共有以下四种情况,分别需输出一些顶点。哪种情况下输出的顶点是错误的?() [A] S和P均在可见的一侧,则输出点P [B] S和P均在不可见的一侧,,则输出0个顶点 [C] S在可见一侧,,P在不可见一侧,则输出线段SP与裁剪线的交点和S [D] S在不可见的一侧,P在可见的一侧,则输出线段SP与裁剪线的交点和P 4、下列关于反走样的叙述中,错误的论述为()。 [A] 把像素当作平面区域来采样[B] 提高分辨率 [C] 增强图像的显示亮度[D] 采用锥形滤波器进行加权区域采样 5、下列关于平面几何投影的叙述中,错误的论述为()。 [A] 透视投影的投影中心到投影面的距离是有限的 [B] 在平行投影中不可能产生灭点 [C] 在透视投影中,一组平行线的投影仍保持平行 [D] 透视投影与平行投影相比,视觉效果更真实,但不一定能真实反映物体的精确尺寸和形状 6、下列关于Bezier曲线的论述中,错误的论述为()。 [A] 曲线及其控制多边形在起点和终点具有同样的几何性质 [B] 在起点和终点处的切线方向和控制多边形第一条边和最后一条边的方向相同 [C] n个控制点控制一条n次Bezier曲线 [D] 某直线与平面Bezier曲线的交点个数不多于该直线与控制多边形的交点个数 7、下面给出的四个选项中,()不是Bezier曲线具有的性质。 [A] 局部性[B] 几何不变性[C] 变差缩减性[D] 凸包性

计算机图形学课程设计书

计算机图形学课程设计 书 文档编制序号:[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日 摘要 图像融合是图像处理中重要部分,能够协同利用同一场景的多种传感器图像信息,输出一幅更适合于人类视觉感知或计算机进一步处理与分析的融合图像。它可明显的改善单一传感器的不足,提高结果图像的清晰度及信息包含量,有利于更为准确、更为可靠、更为全面地获取目标或场景的信息。图像融合主要应用于军事国防上、遥感方面、医学图像处理、机器人、安全和监控、生物监测等领域。用于较多也较成熟的是红外和可见光的融合,在一副图像上显示多种信息,突出目标。一般情况下,图像融合由

计算机图形学实验报告

目录

实验一直线的DDA算法 一、【实验目的】 1.掌握DDA算法的基本原理。 2.掌握DDA直线扫描转换算法。 3.深入了解直线扫描转换的编程思想。 二、【实验内容】 1.利用DDA的算法原理,编程实现对直线的扫描转换。 2.加强对DDA算法的理解和掌握。 三、【测试数据及其结果】 四、【实验源代码】 #include

#include #include #include GLsizei winWidth=500; GLsizei winHeight=500; void Initial(void) { glClearColor(1.0f,1.0f,1.0f,1.0f); glMatrixMode(GL_PROJECTION); gluOrtho2D(0.0,200.0,0.0,150.0); } void DDALine(int x0,int y0,int x1,int y1) { glColor3f(1.0,0.0,0.0); 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++) { glPointSize(3); glBegin(GL_POINTS); glV ertex2i(int(x+0.5),(int)(y+0.5)); glEnd(); x+=xIncre; y+=yIncre; } } void Display(void) { glClear(GL_COLOR_BUFFER_BIT); DDALine(100,100,200,180); glFlush(); }

计算机图形学实验报告记录

计算机图形学实验报告记录

————————————————————————————————作者:————————————————————————————————日期:

计算机图形学实验报告 姓名:___ __________ 学号:_____ ________ 班级:______ _______ 时间:_____2016年12月_________

实验一OpenGL编程与图形绘制 1.实验目的 了解OpenGL编程,并熟悉OpenGL的主要功能、绘制流程和基本语法。学会配置OpenGL环境,并在该环境中编程绘图。 2.实验内容 OpenGL的主要功能:模型绘制、模型观察、颜色模式、光照应用、图像效果增强、位图和图像处理、纹理映射、实时动画和交互技术。 OpenGL的绘制流程分为两个方面:一个完整的窗口系统的OpenGL图形处理系统的结构为:最底层为图形硬件,第二层为操作系统,第三层为窗口系统,第四层为OpenGL,最上面的层为应用软件;OpenGL命令将被放在一个命令缓冲区中,这样命令缓冲区中包含了大量的命令、顶点数据和纹理数据。当缓冲区被清空时,缓冲区中的命令和数据都将传递给流水线的下一个阶段。 OpenGL的基本语法中相关库有:OpenGL核心库:gl、OpenGL实用程序库:glu、OpenG 编程辅助库:aux、OpenGL实用程序工具包(OpenGL utility toolkit,GLUT):glut、Windows 专用库:wgl。 OpenGL的基本语法中命名规则为:OpenGL函数都遵循一个命名约定,即采用以下格式:<库前缀><根命令><可选的参数个数><可选的参数类型>。 了解了上述基础知识后,配置好OpenGL环境,然后在该环境中编程练习图形的绘制,本次实验主要是对点的绘制、直线的绘制和多边形面的绘制。 3.实验代码及结果 3.1点的绘制: #include void Initial(void) { glClearColor(1.0f,1.0f,1.0f,1.0f); //设置窗口背景颜色为白色 glMatrixMode(GL_PROJECTION); //指定设置投影参数 gluOrtho2D(0.0,200.0,0.0,150.0); //设置投影参数 } void Display(void) {

《计算机图形学》复习试题

计算机图形学模拟试卷 计算机图形学课程试卷(卷) 注意:1、本课程为必修(表明必修或选修),学时为 51 ,学分为 3 2、本试卷共 3 页;考试时间 120 分钟;出卷时间:年 12 月 3、姓名、学号等必须写在指定地方;考试时间:年 1 月 11 日 4、本考卷适用专业年级:任课教师: (以上内容为教师填写) 专业年级班级 学号姓名 一、名词解释(15分) 1.国际标准化组织(ISO)对计算机图形学的定义

2. 象素图 3. 正投影 4. 纹理 5. 位图 二.单项选择题(1.5×10=15分) ( )1、在TC 环境下编译绘图程序进行图形初始化时,要寻找文件的格式是?______。 A ).DOC B ).CPP C ).C D ).BGI ( )2、图形系统是由四部分组成,分别为 A).应用系统结构;图形应用软件;图形支撑软件;图形设备。 B).计算机;显示器;打印机;图形应用软件。 C).计算机;图形设备;图形支撑软件;图形应用软件。 D).计算机;图形软件;图形设备;应用数据结构。 ( )3、使用下列二维图形变换矩阵: T=???? ??????111020002 将产生变换的结果为______ 。 A )图形放大2倍; B )图形放大2倍,同时沿X 、Y 坐标轴方向各移动1个绘图单位; C )沿X 坐标轴方向各移动2个绘图单位; D )上述答案都不对。 ( )4、图形显示器的工作方式为 A ).文本方式 B ).图形方式 C ).点阵方式 D ).文本与图形方式 ( )5、透视投影中主灭点最多可以有几个? A) 3 B)2 C)1 D)0 ( )6、在用射线法进行点与多边形之间的包含性检测时,下述哪一个操作不正确? A) 当射线与多边形交于某顶点时且该点的两个邻边在射线的一侧时,计数0次 B) 当射线与多边形交于某顶点时且该点的两个邻边在射线的一侧时,计数2次 C) 当射线与多边形交于某顶点时且该点的两个邻边在射线的两侧时,计数1次 D) 当射线与多边形的某边重合时,计数1次 ( )7、下列有关平面几何投影的叙述语句中,正确的论述为

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

《计算机图形学》课程教学大纲一、课程基本信息 课程代码: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];

计算机图形学实验报告

计算机图形学 实验报告 姓名:谢云飞 学号:20112497 班级:计算机科学与技术11-2班实验地点:逸夫楼507 实验时间:2014.03

实验1直线的生成 1实验目的和要求 理解直线生成的原理;掌握典型直线生成算法;掌握步处理、分析 实验数据的能力; 编程实现DDA算法、Bresenham中点算法;对于给定起点和终点的 直线,分别调用DDA算法和Bresenham中点算法进行批量绘制,并记 录两种算法的绘制时间;利用excel等数据分析软件,将试验结果编 制成表格,并绘制折线图比较两种算法的性能。 2实验环境和工具 开发环境:Visual C++ 6.0 实验平台:Experiment_Frame_One(自制平台)。 本实验提供名为 Experiment_Frame_One的平台,该平台提供基本 绘制、设置、输入功能,学生在此基础上实现DDA算法和Mid_Bresenham 算法,并进行分析。 ?平台界面:如错误!未找到引用源。所示 ?设置:通过view->setting菜单进入,如错误!未找到引 用源。所示 ?输入:通过view->input…菜单进入.如错误!未找到引用 源。所示 ?实现算法: ◆DDA算法:void CExperiment_Frame_OneView::DDA(int X0, int Y0, int X1, int Y1) Mid_Bresenham法:void CExperiment_Frame_OneView::Mid_Bresenham(int X0, int Y0, int X1, int Y1)

3实验结果 3.1程序流程图 1)DDA算法流程图:开始 定义两点坐标差dx,dy,以及epsl,计数k=0,描绘点坐标x,y,x增 量xIncre,y增量yIncre ↓ 输入两点坐标x1,y1,x0,y0 ↓ dx=x1-x0,dy=y1-y0; _________↓_________ ↓↓ 若|dx|>|dy| 反之 epsl=|dx| epsl=|dy| ↓________...________↓ ↓ xIncre=dx/epsl; yIncre=dy/epsl ↓ 填充(强制整形)(x+0.5,y+0.5); ↓←←←← 横坐标x+xIncre; 纵坐标y+yIncre; ↓↑ 若k<=epsl →→→k++ ↓ 结束 2)Mid_Bresenham算法流程图开始 ↓ 定义整形dx,dy,判断值d,以及UpIncre,DownIncre,填充点x,y ↓ 输入x0,y0,x1,y1 ______↓______ ↓↓ 若x0>x1 反之 x=x1;x1=x0;x0=x; x=x0;

计算机图形学课程设计报告简单图形的绘制-

《计算机图形学》课程设计 报告 学生姓名:学号: 学院: 班级: 题目: 简单图形的绘制 职称2015年7月1日

目录 目录............................................................................................... I 一、选题背景 (1) 二、算法设计 (2) 2.1 绘制直线、圆、椭圆、抛物线 (2) 2.1.1 绘制直线 (2) 2.1.2 绘制圆 (2) 2.1.3 绘制椭圆 (2) 2.1.4 绘制抛物线 (2) 2.2 三维几何变换 (2) 三、程序及功能说明 (5) 3.1 绘制直线、圆、椭圆、抛物线...... (5) 3.1.1 绘制直线 (5) 3.1.2 绘制圆 (5) 3.1.3 绘制椭圆 (5) 3.1.4 绘制抛物线 (6) 3.2 图形的平移 (6) 3.3 图形的旋转 (6) 3.4 图形的缩放 (7) 四、结果分析 (7) 4.1 绘制直线、圆、椭圆、抛物线 (7) 4.1.1 直线 (7) 4.1.2 圆 (8)

4.1.3 椭圆 (8) 4.1.4 抛物线 (8) 4.2 图形的平移 (9) 4.3 图形的旋转 (10) 4.4 图形的缩放 (11) 五、总结 (10) 六、课程设计心得体会 (14) 参考文献 (15) 源程序 (16)

一、选题背景

二、算法设计 2.1 绘制直线、圆、椭圆、抛物线 2.1.1 绘制直线 通过两个点的坐标来绘制直线。计算机图形学中二维图形在显示输出之前需要扫描转换,生成直线的算法一般有DDA 算法和中点算法。 2.1.2 绘制圆 通过运用圆的参数方程cos ;sin x a r y b r θθ=+=+来绘制圆的图形,其中[0,2]θπ∈, (a,b )为圆心,r 为半径,运用参数方程,只需要确定半径的长度和圆心的位置,即可绘制出圆。 2.1.3 绘制椭圆 通过运用椭圆的参数方程cos ;sin x a y b θθ==来绘制椭圆的图形,其中 [0,2]θπ∈,是已知的变量,a ,b 分别为长半轴,短半轴,当确定a 和b 后,通过参数方程即可得到这个椭圆的方程。 2.1.4 绘制抛物线 根据点绘制抛物线图像是通过拟合完成,根据三个点的坐标,通过数据拟合,得到经过这三个点的函数关系式,从而再根据这个函数关系式绘制出抛物线上其他的点,形成一条连续的抛物线;或直接根据已知函数绘制图像是通过已知函数画出图像。 2.2 三维几何变换 三维几何变换是二维几何变换的推广。二维几何变换在齐次坐标空间中 可用3?3的变换矩阵表示,类似的,三维几何变换在齐次坐标空间中可用4?4的变换矩阵表示。三维空间中的点(),,x y z 的齐次坐标定义为(),,h h h x y z ,其中,h 为不等与零的任意常数,h x hx =,h y hy =,h z hz =。亦即点(),,x y z 对应4维齐次坐标空间的一条直线:

计算机图形学试卷

三(8分) 1、在真实感绘制技术中,简单光照模型的反射光由哪几部分组成? 2、对于用多边形表示的物体,在光照计算时需要进行明暗处理,为什么? 3、采用Gouraud明暗处理模型计算如图所示点P的颜色值。

四(10分)如图所示,采用Cohen-Sutherland算法对线段进行裁剪时, 1、线段端点P点和Q点的编码各是多少 2、此时是否需要与窗口的边界进行求交运算,为什么(利用编码解释)? 3、如需要,可以与窗口的哪些边界求交,为什么(利用编码解释)? 五(15分)采用Bresenham算法转换直线段,起点x0(2,1)、终点x1(12,5)。 1、给出判别式d的表达式(初始条件及递推关系式): 2 x y d 2 1 -2 3 4 5 6 7 8 六(12分)如图所示三角形ABC,将其绕点(1,1)缩小1倍,采用矩阵的形式计算缩小后三角形各点的规范化齐次坐标,并用OpenGL函数编程实现。

七 计算(18分) 已知三次B 样条曲线方程为 [ ] [0,1] t 0141 030 303631331611)(3212 3 ∈?? ??? ? ? ????????????? ??? ??----? ?=+++i i i i i P P P P t t t t c , 控制顶点{}{})0,6(),1,5(),0,4(),1,3(),0,2(),1,1(),0,0(...10-==n P P P P 可生成四段B 样条曲线3210,,,c c c c 。 1)B 样条曲线和Bezier 曲线相比,最明显的特点是什么? 2)求)0(),1(),5.0(),0(),1(' '01101 c c c c c 3)如果调整控制点2P ,将对哪些曲线段产生影响 图形学作业 05计算机2班 2 郑中旭 Subject : 已知三次B 样条曲线方程为 [ ] [0,1] t 0141 030 3036313 31611)(3212 3 ∈?? ??? ? ? ????????????? ??? ??----? ?=+++i i i i i P P P P t t t t c , 控制顶点{}{})0,6(),1,5(),0,4(),1,3(),0,2(),1,1(),0,0(...10-==n P P P P 可生成四段B 样条曲线3210,,,c c c c 。 4)B 样条曲线和Bezier 曲线相比,最明显的特点是什么? 5)求)0(),1(),0(),1(),5.0(),0(),1("" 0''01101 1 c c c c c c c 。

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

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

计算机图形学试卷及参考答案

年级班姓名学号成绩 一、填空题(每空1分,共30分) 1、计算机图形学是用计算机建立、存储、处理某个对象的模型,并根据模型 2、计算机图形系统功能主要有计算功能、存储功能、输入功能、输出功能、 交互功能。 3、区域的表示有内点表示和边界表示两种形式。 4、字符裁剪的策略有串精度裁剪、字符精度裁剪、基于构成字符最小元素的 裁剪。 5、图形软件系统提供给用户的三种基本输入方式包括请求方式、采样方式、事件方式。 6、常见的图形绘制设备有喷墨打印机、笔式绘图机、激光打印机。 7、字符生成常用的描述方法有点阵式和轮廓式。 8、在交互式图形输入过程中,常用的控制方式有请求、样本、事件和混合四种形式。 9、用于八连通区域的填充算法可以用于四连通区域的填充,但用于四连通区域的填充算法并不适用于八连通区域的填充。 10、能够在人们视觉系统中形成视觉印象的对象称为图形。 二、不定项选择题(每题2分,共20分) 1、计算机图形显示器一般使用(A)颜色模型。 (A)RGB (B) CMY (C)HSV (D) HLS 2、计算机图形系统功能不包括(D)。 (A)计算功能(B) 存储功能 (C)交互功能(D)修饰功能 3、多边形填充算法中,正确的描述是(ABC) (A)扫描线算法对每个象素只访问一次,主要缺点是对各种表的维持和排序

的耗费较大 (B)边填充算法基本思想是对于每一条扫描线与多边形的交点,将其右方象 素取补 (C)边填充算法较适合于帧缓冲存储器的图形系统 (D)边标志算法也不能解决象素被重复访问的缺点 4、在交互式图形输入过程中,常用的控制方式不包括(C)。 (A)样本(B)事件(C)交互(D)混合 5、下列有关平面几何投影的叙述,错误的是(D ) (A)透视投影又可分为一点透视、二点透视、三点透视 (B)斜投影又可分为斜等测、斜二测 (C)正视图又可分为主视图、侧视图、俯视图 (D)正轴测又可分为正一测、正二测、正三测 6、视频信息的最小单位是(A ) (A)帧(B)块(C)像素(D)字 7、在透视投影中,主灭点的最多个数是(C) (A)1 (B)2 (C)3 (D)4 8、扫描线多边形填充算法中,对于扫描线同各边的交点的处理具有特殊性。穿过某两条边的共享顶点的扫描线与这两条边的交点数只能计为(B )交点: (A)0 个(B)1个 (C)2个(D)3个 9、用于减少和消除用离散量表示连续量引起的失真效果的技术称为(B)(A)走样(B)反走样(C)填充(D)以上都不是 10、分辨率为1024×1024的显示器需要(C)字节位平面数为16的帧缓存?(A)512KB (B)1MB (C)2MB (D)3MB 三、名词解释(每题3分,共15分) 1、计算机图形系统:用来生成、处理和显示图形的一整套硬件和软件。

相关主题
文本预览
相关文档 最新文档