课程实验指导v1
课程实验指导
图形空间
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
实验0 安装OpenGL与创建工程
OpenGL是一个非常优秀的图形软件接口。OpenGL官方网站(英文)http://www.opengl.org/下面将对Windows下的OpenGL编程进行简单介绍。1.安装GLUT工具包GLUT不是OpenGL所必须的,但它会给我们的学习带来一定的方便,推荐安装。Windows环境下的GLUT本地下载地址:glut-install.zip(大小约为150k)...原创 2017-04-17 10:32:41 · 9625 阅读 · 2 评论 -
实验1 OpenGL初识
实验预备知识Windows下的OpenGL编程步骤简单介绍详见课程实验教学博客-实验0 安装GLUT包与创建工程:https://blog.youkuaiyun.com/wpxu08/article/details/70208353 1.实验目的:熟悉编程环境;了解光栅图形显示器的特点;了解计算机绘图的特点;利用VC+OpenGL作为开发平台设计程序,以能够在屏幕上生成任意一个像素点为本实...原创 2017-04-17 10:33:31 · 5889 阅读 · 0 评论 -
附加实验1 Sierpinski三角形
1.实验目的:理解掌握一个OpenGL绘制图形的完整程序结构。2.实验内容:(1) 运行示范实验代码,掌握程序结构与每一个语句含义;(2) 了解分形图形的生成特点,并能将其扩展、举一反三。3.实验原理: Sierpinski三角形是一种分形图形,它是递归地构造的。最常见的构造方法如下图所示:把一个三角形分成四等份,挖掉中间那一份,然后继续对另外三个三角形进行这样的操作,并且无限地递归下...原创 2017-04-17 10:32:45 · 2411 阅读 · 0 评论 -
实验2 直线生成算法实现
1.实验目的:理解基本图形元素光栅化的基本原理,掌握一种基本图形元素光栅化算法,利用OpenGL实现直线光栅化的DDA算法。2.实验内容:(1) 根据所给的直线光栅化的示范源程序,在计算机上编译运行,输出正确结果;(2) 指出示范程序采用的算法,以此为基础将其改造为中点线算法或Bresenham算法,写入实验报告;(3) 根据示范代码,将其改造为圆的光栅化算法,写入实验报告;(4) 了解和使用O...原创 2017-04-17 10:33:35 · 3960 阅读 · 10 评论 -
实验3 OpenGL几何变换
1.实验目的:理解掌握一个OpenGL程序平移、旋转、缩放变换的方法。2.实验内容:(1)阅读实验原理,运行示范实验代码,掌握OpenGL程序平移、旋转、缩放变换的方法;(2)根据示范代码,尝试完成实验作业;3.实验原理:(1)OpenGL下的几何变换在OpenGL的核心库中,每一种几何变换都有一个独立的函数,所有变换都在三维空间中定义。平移矩阵构造函数为glTranslate<f,d>...原创 2017-04-17 10:32:58 · 3103 阅读 · 0 评论 -
附加实验2 OpenGL变换综合练习
1.实验目的:理解掌握OpenGL程序的投影变换,能正确使用投影变换函数,实现正投影与透视投影。2.实验内容:(1)使用图a中的尺寸绘制小桌,三维效果图见图b。要求绘制小桌各部件时只能使用函数glutSolidCube()和变换函数,不能使用函数glVertex()等直接指定顶点位置;(2)添加键盘按键或右键菜单控制实现小桌效果图在正投影和透视投影模式间的切换;在此基础上,考虑一点透视、两点透视、...原创 2017-04-17 10:33:11 · 2092 阅读 · 0 评论 -
实验4 编码裁剪算法
1.实验目的:了解二维图形裁剪的原理(点的裁剪、直线的裁剪、多边形的裁剪),利用VC+OpenGL实现直线的裁剪算法。2.实验内容:(1) 理解直线裁剪的原理(Cohen-Surtherland算法、梁友栋算法)(2) 利用VC+OpenGL实现直线的编码裁剪算法,在屏幕上用一个封闭矩形裁剪任意一条直线。(3) 调试、编译、修改程序。(4) 尝试实现梁友栋裁剪算法。3.实验原理:编码裁剪算法中,...原创 2017-04-17 10:33:39 · 3331 阅读 · 1 评论 -
实验5 OpenGL模型视图变换
1.实验目的:理解掌握OpenGL程序的模型视图变换。2.实验内容:(1)阅读实验原理,运行示范实验代码,理解掌握OpenGL程序的模型视图变换;(2)根据示范代码,尝试完成实验作业;3.实验原理:我们生活在一个三维的世界——如果要观察一个物体,我们可以:1、从不同的位置去观察它(人运动,选定某个位置去看)。(视图变换)2、移动或者旋转它,当然了,如果它只是计算机里面的物体,我们还可以放大或缩小它...原创 2017-04-17 10:33:04 · 3082 阅读 · 0 评论 -
实验6 Bezier曲线生成
1.实验目的:了解曲线的生成原理,掌握几种常见的曲线生成算法,利用VC+OpenGL实现Bezier曲线生成算法。2.实验内容:(1) 结合示范代码了解曲线生成原理与算法实现,尤其是Bezier曲线;(2) 调试、编译、修改示范程序。3.实验原理:Bezier曲线是通过一组多边形折线的顶点来定义的。如果折线的顶点固定不变,则由其定义的Bezier曲线是唯一的。在折线的各顶点中,只有第一点和最后一...原创 2017-04-17 10:33:43 · 7274 阅读 · 0 评论 -
实验7 OpenGL光照
一.实验目的:了解掌握OpenGL程序的光照与材质,能正确使用光源与材质函数设置所需的绘制效果。二.实验内容:(1)下载并运行Nate Robin教学程序包中的lightmaterial程序,试验不同的光照与材质系数;(2)运行示范代码1,了解光照与材质函数使用。三.实验原理:为在场景中增加光照,需要执行以下步骤:(1) 设置一个或多个光源,设定它的有关属性;...原创 2017-04-17 10:33:48 · 3930 阅读 · 1 评论 -
实验8 OpenGL交互
1.实验目的:理解掌握一个OpenGL程序的常见交互方法。2.实验内容:(1) 运行示范实验代码1,掌握程序鼠标交互方法,尝试为其添加键盘与菜单控制,实现同样功能;(2)运行示范实验代码2,掌握程序鼠标坐标获取与绘图方法,尝试为其添加绘制直线功能;(3)结合上述两步,能否实现通过鼠标右键菜单切换实现一个简单的绘图程序,可以绘制直线、三角形、正方形等常见图形? 3.实验原理:要想在OpenGL中处理...原创 2017-04-17 10:32:51 · 3622 阅读 · 0 评论
分享