《计算机图形学》课程设计报告
题目名称:
专 业 班 级 学 号 姓 名 指导教师
年 月 日
课题名称:Solar System太阳系 学生姓名:曾睿 学生学号:0643111150
Solar System(太阳系)
软件工程 专业
学生 王洋 指导老师 李征
[摘要]太阳系(Solar System)是以太阳为中心,和所有受到太阳重力约束的天体的集合体,主要包括太阳,八大行星,以及卫星.此课题模拟太阳系围绕太阳运转的模型,以太阳,八大行星和月球形成大致的体系结构,以VC6.0为平台用OpenGL基础知识实现从不同角度观测太阳系.
关键词:OpenGL VC6.0 太阳系 运转 角度
-1-
课题名称:Solar System太阳系 学生姓名:曾睿 学生学号:0643111150
一、实验名称: Solar System(太阳系)
二、 实验的目的和要求:
1.熟悉OpenGL基础函数 2.通过程序模拟太阳系运行 3.实现改变视角观测太阳系
三、实验的环境:
1.硬件环境:CPU Intel Pentium D ,1G内存 2.软件环境:
操作系统:Windows xp SP2
编译软件及版本:vc6.0 OpenGL环境
四、系统描述
1.太阳
太阳是恒星,能够自转,体积是太阳系中最大的,能够发光,处于太阳系中心位置. 2.八大行星
八大行星按与太阳距离从近到远分别为: 水星, 金星,地球,火星,木星,土星,天王星,海王星,各有各的大小,其中以木星最大,以各自不同的公转速度绕太阳运行,并自转. 3.月球
-2-
课题名称:Solar System太阳系 学生姓名:曾睿 学生学号:0643111150
月球是围绕地球旋转的卫星.体积是系统中最小的,旋转周期比较快。
五. 理论基础:
用windows api创建窗口,使用OpenGL绘制函数绘制球体,实现位图文件读取,并转换为纹理,使用系统时间控制球体转动,设置视点视角,通过改变视角从不同角度观测. 所使用的计算机图形学理论基础: 1. 3D管道中的几何变换
旋转矩阵行向量为该矩阵坐标系在原坐标系上的坐标,列向量为原坐标系的向量在本旋转矩阵坐标系上的坐标。
旋转是欧氏变换;旋转、放缩是线性变换;旋转、放缩、平移是仿射变换;旋转、放缩、平移、透视投影是射影变换。
线性变换在四维空间,仿射变换在三维空间,射影必须采用摄像坐标系,仿射变换是到自身的一类变换.
齐次坐标系就是将一个原本是n维的向量用一个n+1维向量来表示。 实数。显然一个向量的齐次表示是不唯一的,齐次坐标的h取不同的值都表示的是同一个点,比如齐次坐标[8,4,2]、[4,2,1]表示的都是二维点[2,1]。
-3-
课题名称:Solar System太阳系 学生姓名:曾睿 学生学号:0643111150
它提供了用矩阵运算把二维、三维甚至高维空间中的一个点集从一个坐标系变换到另一个坐标系的有效方法。 4维坐标的旋转到了3维坐标就是平移.
世界坐标系描述了物体在空间的位置,角度在世界坐标系中可以设定物体的位置,决定物体以什么方式进行放置
局部坐标系描述了物体的形状,大小,样式等,可以在这一坐标系中设定物体的形状
当我们在虚拟场景中放置物体时,必须将其从局部坐标系转换到世界坐标系
局部到世界的坐标系转换可以看做向量的转化 局部坐标系到世界坐标系:旋转,放缩,平移 世界坐标系到观测坐标系:平移,旋转。
透视投影,就是以中心投影为依据所作的透视图象。
正交投影将物体垂直的投影在屏幕上,在正交投影当中,物体的大小不会随着视口屏幕等参数的改变而变化。在正交投影中,三维物体的坐标沿平行线投影到观察平面上,它保持物体的有关比例不变。
-4-