矿大地学可视化实验报告资料 - 图文

更新时间:2024-03-16 11:09:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

中国矿业大学

CHINA UNIVERSITY OF MINING & TECHNOLOGY

实验报告

作 者: 指导老师: 学 号:

2015年11月

“地学可视化与景观模拟”

目 录

实验一 利用OpenGL绘制三维建筑物...................................................................... 1

一、实验目的 ......................................................................................................................... 1 二、实验内容 ......................................................................................................................... 1 三、实验要求 ......................................................................................................................... 1 四、实验步骤 ......................................................................................................................... 2 五、 实验结果 ....................................................................................................................... 5

实验二 添加光照和材质.............................................................................................. 7

一、实验目的 ......................................................................................................................... 7 二、实验内容 ......................................................................................................................... 7 三、实验要求 ......................................................................................................................... 7 四、 实验步骤 ....................................................................................................................... 7 五、 实验结果 ....................................................................................................................... 8

实验三 添加纹理映射................................................................................................ 10

一、实验目的 ....................................................................................................................... 10 二、实验内容 ....................................................................................................................... 10 三、实验要求 ....................................................................................................................... 10 四、实验步骤 ....................................................................................................................... 10 五、 实验结果 ..................................................................................................................... 11

实验四:VRML编程 ................................................................................................. 12

一、实验目的 ....................................................................................................................... 12 二、实验内容 ....................................................................................................................... 12 三、实验要求 ....................................................................................................................... 12 四、实验步骤 ....................................................................................................................... 12

实验小结...................................................................................................................... 16

实验一 利用OpenGL绘制三维建筑物

一、实验目的

了解OpenGL编程基本框架,掌握简单三维图形的绘制及变换。

二、实验内容

(1)利用OpenGL实现以下建筑物的三维绘制;

(2)利用OpenGL的图形变换实现对绘制物体的旋转、平移和缩放。

图 1-1 实验内容

三、实验要求

(1)实验代码的工程名称以“班级+学号+实验编号”方式命名。例如,学号为7000000,则实验一的工程名称为”1_7000000_1”

(2)撰写实验报告,内容包括:实验目的、实验内容、实验要求、实验步骤、实验结果。报告要求有封面、标题、姓名学号等信息,格式要求规范。

1

四、实验步骤

1、创建实验工程2_07123138_1,添加头文件; 2、为工程添加代码,代码如下:

2

3

4

3、运行程序,调试代码中的错误,如此循环往复,直至得到实验结果。

五、实验结果

运行代码后,结果如下图所示:

5

图1-2 绘图结果

图1-3 旋转后结果

6

实验二 添加光照和材质

一、实验目的

了解OpenGL光照模型,学会光源及材质的使用。

二、实验内容

(1)在实验一的基础上,增加一个白色的平行光源,并启用光照及光源。 (2)为2栋建筑物分别添加不同的材质。

三、实验要求

(1)实验代码的工程名称以“班级+学号+实验编号”方式命名。例如,学号为7000000,则实验一的工程名称为”1_7000000_2”

(2)撰写实验报告,内容包括:实验目的、实验内容、实验要求、实验步骤、实验结果。报告要求有封面、标题、姓名学号等信息,格式要求规范。

四、实验步骤

1、新建工程2_07123138_2,添加实验一代码,实现建筑物的绘制。

2、在实验一的基础上,修改原有代码,添加光照和建筑物材质的代码,修改部分代码如下:

(1)在init函数中添加光源

7

(2)在display函数中为所绘制图形添加材质

3、运行代码,不断调试错误,修改参数,掌握光照和材质的作用

五、实验结果

实验结果如下:

8

图2-1 添加光照和材质实验结果

9

实验三 添加纹理映射

一、实验目的

了解OpenGL纹理映射,学会纹理映射的使用。

二、实验内容

在实验一的基础上,增加一个棋盘的纹理映射或自定义纹理映射

三、实验要求

撰写实验报告,内容包括:实验目的、实验内容、实验要求、实验步骤、实验结果。报告要求有封面、标题、姓名学号等信息,格式要求规范。

四、实验步骤

1、新建工程,添加实验一绘制图形代码

2、在实验一的基础上修改代码,添加纹理映射,部分修改的关键代码如下:

10

3、调试程序,直至实验成功

五、实验结果

图3-1 添加纹理映射

11

实验四:VRML编程

一、实验目的

学习VRML编程知识,掌握VRML基本编程技能。

二、实验内容

利用VRML构建具有地形、房子及汽车的三维场景并在该场景中实现汽车奔跑的动画。其中,地形和房子的三维造型需通过原始数据自行构建,汽车造型通过inline方式载入已给定的wrl文件。

三、实验要求

撰写实验报告,内容包括:实验目的、实验内容、实验要求、实验步骤、实验结果。报告要求有封面、标题、姓名学号等信息,格式要求规范。

四、实验步骤

1、利用ElevationGrid节点构建地形网格,并利用Appearance节点的texture域贴上影像纹理,得到下图所示结果。

12

2、利用Box节点构建标准建筑物,并利用Appearance节点的texture域贴上建筑物纹理,得到下图所示结果。

3、利用Transform节点将标准建筑物经旋转及平移后放置相应的位置上。

4)利用inline节点将car.wrl文件添加进来,并设置一个间隔为20s的时间传感器,利用位置插补器节点PositionInterpolator定义一个前进路径,然后利用ROUTE语句将时间传感器的事件输出与位置插补器节点及汽车位置(通过Transform节点)关联起来。

13

4、代码如下:

14

15

实验小结

本次课程实验,共有四个小实验,其中前三个为Open GL编程实验,最后一个为VRML编程实验。总体来说,这四个实验与课程所学知识紧密相连,在学习之余联系实践。

通过本次实验,我进一步掌握了课程所学知识,懂得了理论联系实践的应用,也增强了编程能力。其中,仍然遇到了不少问题。比如在实验二的过程中,光照效果和材质效果不理想,需要不断调试。而实验三中添加纹理,想要使左右两图形得到不一样的纹理,也需要在绘制图形的函数中修改参数。而VRML相对Open GL编程稍微简单,但是运行调试却没有那么方便。

综上,本次实验不仅巩固了理论知识,又增强了个人动手能力。在今后的学习过程中,我会再接再厉,不断提高自己的编程水平。

16

本文来源:https://www.bwwdw.com/article/ooj8.html

Top