计算机图形学实验报告_第1页
计算机图形学实验报告_第2页
计算机图形学实验报告_第3页
计算机图形学实验报告_第4页
计算机图形学实验报告_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机图形学计算机图形学 实验报告实验报告 学号 学号 2007211520072115 姓名 姓名 班级 班级 计算机计算机 2 2 班班 指导老师 指导老师 何太军何太军 2010 6 19 实验一 实验一 WindowsWindows 图形程序设计基础图形程序设计基础 1 1 实验目的实验目的 1 学习理解 Win32 应用程序设计的基本知识 SDK 编程 2 掌握 Win32 应用程序的基本结构 消息循环与消息处理等 3 学习使用 VC 编写 Win32 Application 的方法 4 学习 MFC 类库的概念与结构 5 学习使用 VC 编写 Win32 应用的方法 单文档 多文档 对话框 6 学习使用 MFC 的图形编程 2 2 实验内容实验内容 1 使用 WindowsAPI 编写一个简单的 Win32 程序 调用绘图 API 函数绘制若干图形 可选任务 2 使用 MFC AppWizard 建立一个 SDI 程序 窗口内显示 Hello This is my first SDI Application 必选任务 3 利用 MFC AppWizard exe 建立一个 SDI 程序 在文档视口 内绘制基本图形 直线 圆 椭圆 矩形 多边形 曲线 圆弧 椭圆弧 填 充 文字等 练习图形属性的编程 修改线型 线宽 颜色 填充样式 文字样式等 定义图形数据结构 Point Line Circle 等保存一些简单图形数据 在文档类中 并在 视图类 OnDraw 中绘制 3 3 实验过程实验过程 1 使用 MFC AppWizard exe 建立一个 SDI 程序 选择单文档 2 在 View 类的 OnDraw 函数中添加图形绘制代码 说出字 符串 Hello This is my first SDI Application 另外实现各种颜色 各种边框 的线 圆 方形 多边形以及圆弧的绘制 3 在类视图中添加图形数据 point pp pp circle 的类 保存简 单图形数据 通过在 OnDraw 函数中调用 实现线 圆的绘 制 4 4 实验结果实验结果 正确地在指定位置显示了 Hello This is my first SDI Application 字符串 成功绘制了圆 椭圆 方形 多边形以及曲 线圆弧 椭圆弧 同时按指定属性改绘了圆 方形和直线 成功地 完成了实验 结果截图 5 5 实验体会实验体会 通过实验一 了解了如用使用基本的 SDI 编程函数绘制简单的图 形 如 在指定的位置输出字符串以及基本图形线 圆 方形的绘 制 同时 初步认识了 MFC 编程 了解了一些 MFC 的结构 和如 何进行窗口编程的知识 实验二 基本图形生成算法实验二 基本图形生成算法 GDI MFC GDI MFC 1 1 实验目的 实验目的 1 学习理解 Win32 应用程序设计的基本知识 SDK 编程 2 掌握 Win32 应用程序的基本结构 消息循环与消息处理等 3 学习使用 VC 编写 Win32 Application 的方法 4 学习 MFC 类库的概念与结构 5 学习使用 VC 编写 Win32 应用的方法 单文档 多文档 对话框 6 学习使用 MFC 的图形编程 2 2 实验内容实验内容 1 使用 MFC AppWizard 建立一个 SDI 程序 从 CClientDC 中 派生一个类 添加图绘制算法处理函数 DDA 画线 Bresenham 画线 要求能绘制任意斜率的直线段 添加中点 画圆函数 要求能绘制圆心在任意位置的圆 添加边界表示 区域和内点表示区域的种子填充算法 2 自定义定义图形数据结构 Point Line Circle Polygon 等 保存一些简单图形数据 在文档类中 验证以上基本图 形算法 画若干条线段 若干个圆 并以圆作为区域验证 种子填充算法 绘制多边形并填充 3 学习数据序列化 串行化 实现将自定义类中的数据保 存到自定义文件中 Point 等类从 CObject 派生 参考 VC 经典教程 第 7 章 重载 Serialize 函数 3 3 实验过程 实验过程 1 用 MFC exe 建立一个单文档工程 2 在类视图中的 DrawDC 类中根据教材上的代码添加相应的 DDA 画线算法函数 Bresenham 画线算法函数 中点画圆函数 边 界表示区域和内点表示区域的种子填充算法函数 以供 DView 类中的 OnDraw 函数来调用 3 自定义 circle 2 line 2 point 2 类来保存基本的图形数据 4 在 OnDraw 函数里调用不同的画线 画圆算法来绘制直线 圆 多边形 曲线等基本图形 调用填充算法函数 用来填充 多边形和圆 5 修改 Point 为 point resister 类 从 CObject 派生 并且重 载 Serialize 函数 Serialize 函数函数体根据不同的成员 变量实现数据的保存 6 在 OnDraw 函数里调用直线的 Serialize 函数 实现直线 数据的串行化 保存数据到指定文件里 4 4 实验结果 实验结果 通过输入教材上的代码 能成功地实现相应的算法功能 通过 在 OnDraw 中调用不同的函数 实现了相应的线 圆 多边形的 绘制 并成功地实现图形的填充 结果截图 5 5 实验体会 实验体会 通过实验二 更透彻的理解了课本上的 DDA 画线算法和 Bresenham 画线算法 中点画圆函数 边界表示区域和内点表示区 域的种子填充等算法学习了如何自定义类来存贮简单的图形数据 类的派生和函数的重载 数据的串行化及保存数据到指定的文件 初步认识了 MFC 中的文档类 学习了一些相关的内容 进一步的了 解的 MFC 的结构与编程方法 实验三 实验三 OpenGLOpenGL 图形程序设计基础图形程序设计基础 1 1 实验目的 实验目的 1 了解 OpenGL 图形库的功能和结构 2 学习使用 Visual C 开发基于控制台的图形程序 3 学习使用 Visual C 开发基于单文档 GUI 界面 的图形 程序 4 学习使用 OpenGL 生成基本图形 5 学习使用 OpenGL 实现图形变换 2 2 实验内容 实验内容 1 使用 Visual C 建立一个 Win32 Console Application 控 制台应用程序 定义若干点坐标 绘制点 线段 不闭合折线 闭 合折线 多边形 三角形 四边形 三角扇 三角条带 四边形条 带 尝试不同尺寸的点 不同线宽的线 设置颜色等操作 2 使用 MFC AppWizard 建立一个 SDI 程序 根据参考资料 2 和 3 中的步骤设置 OpenGL 图形绘制环境 增加绘制 4 种基本图形 选择其中之一 3 实验过程 1 建立一个控制台应用程序 在 RenderScene 函数中调用 不同的系统函数分别绘制不同属性的点 线 折线 多边形 扇形 等 2 建立一个 SDI 程序 按照所给资料设置 OpenGL 图形绘制环境 并照敲老师所给实列 观看结果 查看关键代码区 3 仿照所给列子 改写代码 绘制彩色的正方体 4 4 实验结果 实验结果 基本图形显示正确 基本图形截图 三棱柱截图 5 5 实验体会 实验体会 在实验过程中 在工程的设置里面一定要把相关的库文件导入 设置正方体坐标时 要根据画布的坐标来 设置好图形的坐标比较 重要 这将影响这图形显示的效果 通过这个实验 掌握了许多新 图形的画法 同时 通过仿照所给列子 改写代码 绘制彩色的正 方体 我也初步认识了绘制立体图形的一些内容 希望在今后的试 验中可以了解更多 实验四 实验四 二维图形变换程序设计二维图形变换程序设计 1 1 实验目的 实验目的 1 掌握图形变换实现原理 基本几何变换 复合变换等 2 学习使用 Visual C 开发菜单 对话框等交互界面的设计 3 学习使用 MFC 单文档程序 实现二维图形的基本几何变换 2 2 实验内容 实验内容 使用 Visual C 建立一个单文档程序 采用实验二中定义的基 本图形类 在程序中增加图形变换菜单 各基本变换对应菜单项 各图形变换的参数通过对话框提供 设计提供变换参数的对话框 如平移 旋转 比例等 实现二维图形的变换 提示 在各个图 形类中增加相应的成员函数实现平移 菜单选择变换弹出对应变换 的参数对话框 对话框中提供参数后取出参数传递给图形对象 通 过调用图形变换成员函数实现图形对象的变换 要求实现直线段 圆 多边形等基本图形的几何变换 3 3 实验过程 实验过程 1 根据实验要求 新建菜单 增加二维图形变换子菜单 然后在 菜单上添加平移 比例 对称 旋转以及错切选项 2 对菜单中的每一项方法构造响应函数 并给几个需要弹出对话 框的选项添加对话框响应函数 3 在弹出的对话框输入参数 获取输入的参数 调用相应的变换 函数 实现图形的变换 4 4 实验结果 实验结果 结果正确 平移 xy 100 0 5 5 实验体会 实验体会 在这次实验中 涉及到了 菜单和对话框的操作 在 vc 6 0 中 是非常方便的 VC 6 0 都提供了向导型的操作过程和可视化 的控件添加 这样节省了代码编写量 通过实验四 进一步加深了 对 MFC 编程的认识 也学习了如何对二维图形进行各种变换操作 实验五 三维图形变换程序设计实验五 三维图形变换程序设计 1 1 实验目的 实验目的 1 掌握三维图形变换实现原理 基本几何变换 复合变换 投 影变换等 2 学习使用 Visual C 开发菜单 对话框等交互界面的设计 3 学习使用 OpenGL 实现图形模型变换 视图变换 投影变换 4 学习使用 OpenGL 生成基本图形 2 2 实验内容 实验内容 1 使用 MFC AppWizard 建立一个 SDI 程序 根据参考资料 2 和 3 中的步骤设置 OpenGL 图形绘制环境 增加绘制如下图形 选择其 中任意两个 注意模型坐标系的选择和顶点坐标的计算 可直接 使用实验三的设计 2 在程序中增加图形变换菜单 各个基本变换对应菜单项 各 图形变换的参数通过对话框提供 设计提供变换参数的对话框 如 平移 旋转 比例等 实现三维图形的基本几何变换 提示 菜单 选择变换弹出对应变换的参数对话框 对话框中提供参数 尝试改 变投影参数与观察参数 实现图形的投影变换 3 3 实验过程 实验过程 1 根据实验要求 首先建立变换菜单 在菜单上提供平移 比例 旋转等变换方法 2 对菜单中的每一项方法构造响应函数 弹出对话框 3 通过弹出的对话框进行参数输入 并获取输入的参数 调用相 应的变换函数 实现图形的变换 4 4 实验结果 实验结果 如压缩文件中 Debug 文件夹的 EXE 程序所示 按下平移 输入 X Y Z 轴的平移参数 得出新绘制的图形 按下比例 输入比例系数 得到新绘制的图形 按下旋转 首先输入想要绕某点旋转的 该点的坐标 再输入所 要旋转的角度 得出新绘制的图形 原始图形 平移过后 比例放大过后 旋转后 5 5 实验体会 实验体会 通过实验五 可以熟练的使用菜单完成各种相应的操作 同时 在上个实验 学习二维图形变换的基础上 学习了如何对三维图形 进行变换操作 进一步完善了对于图形变换的学习 实验六 实验六 OpenGLOpenGL 真实感图形程序设计真实感图形程序设计 1 1 实验目的 实验目的 1 掌握真实感图形生成的基本原理 如消隐 光照 材质等知 识 2 学习使用 OpenGL GLUT 等生成基本图形 如球体 正方体 茶壶等 3 学习使用 OpenGL 生成各种光源 点光源 平行光 聚光灯 等 4 学习使用 OpenGL 设置绘制对象的颜色 材质 5 进一步熟悉 OpenGL 图形变换技术 几何变换 视图变换 观察变换等 1 对模型实现各种几何变换 包括对 glTranslate glRotate glScanglLoadMatrix glMultMatrix 等使用 2 视口变换 测试不同大小的视口 glViewport 3 投影变换 要对平行投影与透视投影分别测试 使用不 同的观察体参数 观察 效果 2 2 实验内容 实验内容 使用 MFC AppWizard 建立一个 SDI 程序 根据参考资料 2 和 3 中 的步骤设置 Opengl 图形绘制环境 增加绘制如下图形 球体或茶壶 等 使用 glut 函数 环境中创建点光源 平行光 聚光灯 设置 所绘制对象的材质 呈现出塑料 金属等材质特性 对官员的位置 方向 类别进行控制 改变材质参数 观察效果 3 3 实验过程 实验过程 1 根据以前设置好的 OpenGL 图形绘制参数 在实验 3 的绘制正 方体的基础上修改程序 绘制 1 个全红的正方体 2 建立一个设置光源的函数 进行光源的各种参数的设置 3 设置好各个光源参数后 调用函数开启光源 此时的正方体 轮郭清晰 显得很真实 4 4 实验结果 实验结果 绘制了 1 个全红的正方体 设置的光源 并且向光部分亮 背光部分相对而言显得黯淡 5 5 实验体会 实验体会 实验六通过使用 openGL 的相关函数 绘制出立体图形 并设 置三维图形的材质 光源 调整一定的系数使图形更真的显示 此次学到了 如何使用 openGL 绘制一个比较真实的三维物体 进一步了解的图形学中三维图形的处理方式 结合课堂中内容 对三维图形有了更深入的理解 实验七 二维交互式图形程序设计实验七 二维交互式图形程序设计 1 1 实验目的 实验目的 1 综合使用 VC 编写 Win32 应用的方法 单文档 多文档 对话 框 2 掌握交互式绘图程序设计及 MFC 相关类的使用 3 掌握使用 MFC 的编写简单动画程序 2 2 实验任务 实验任务 1 使用 MFC AppWizard 建立一个 SDI 程序 综合前几次二维 绘图 实验的结果 实现基本功能 建立绘制点 直线段 圆 椭圆 圆弧 多段线 折线 多边 形 贝塞尔 Bezier 曲线的相关类 对于封闭图形 应能多种方 式填充 字符串 使用实验二中自定义的 CClientDC 的派生类 实现交互式 鼠标 绘制以上图形 实现颜色 线型 字体等的交 互式选择 实现除曲 线 圆弧外其他图形的鼠标拾取 框选 点 选 实现新建文件 保存文件 打开文件 打开保存的自定义图形 文件 并绘制图形 软件界面设计 工具栏 菜单 光标等 可选扩展功能 1 实现平移 旋转 缩放 对称 错切等图形几何变换 2 图形的显示控制包括缩放 按比例 选取框 平移 上 小 左 右 3 实现图层功能 可见性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论