资源简介
计算机图形学实验/课程设计 opengl实现太阳系运转效果图 纹理 光照模型....啥的都有 大家自己看
代码片段和文件信息
#include
#include
#include
#include
#include
#include
#include
#pragma comment(lib “winmm.lib“)
#pragma comment(lib“wininet“)
// 纹理图像结构
typedef struct
{
int imgWidth; // 纹理宽度
int imgHeight; // 纹理高度
unsigned char byteCount; // 每个象素对应的字节数,3:24位图,4:带alpha通道的24位图
unsigned char *data; // 纹理数据
}TEXTUREIMAGE;
// BMP文件头
#pragma pack(2)
typedef struct {
unsigned short bfType; // 文件类型
unsigned long bfSize; // 文件大小
unsigned short bfReserved1; // 保留位
unsigned short bfReserved2; // 保留位
unsigned long bfOffBits; // 数据偏移位置
}BMPFILEHEADER;
#pragma pack()
// BMP信息头
typedef struct {
unsigned long biSize; // 此结构大小
long biWidth; // 图像宽度
long biHeight; // 图像高度
unsigned short biPlanes; // 调色板数量
unsigned short biBitCount; // 每个象素对应的位数,24:24位图,32:带alpha通道的24位图
unsigned long biCompression; // 压缩
unsigned long biSizeImage; // 图像大小
long biXPelsPerMeter;// 横向分辨率
long biYPelsPerMeter;// 纵向分辨率
unsigned long biClrUsed; // 颜色使用数
unsigned long biClrImportant; // 重要颜色数
}BMPINFOHEADER;
// 定义窗口的标题、宽度、高度、全屏布尔变量
#define WIN_title “模拟太阳系各星球的转动“
const int WIN_WIDTH = 800;
const int WIN_HEIGHT = 600;
BOOL isFullScreen = FALSE; // 初始不为全屏
#define DEG_TO_RAD 0.017453
float angle=0.0;
static GLdouble viewer[]= {00000}; // 初始化视角
GLUquadricObj *quadric; // 建立二次曲面对象
GLfloat angle_Z; // 星空旋转角度
bool g_bOrbitOn = true; // 控制转动暂停
float g_fSpeedmodifier = 1.0f;
// 时间控制
float g_fElpasedTime;
double g_dCurrentTime;
double g_dLastTime;
GLfloat LightAmbient[] = { 1.0f 1.0f 1.0f 0.0f }; // 环境光参数
GLfloat LightDiffuse[] = { 1.0f 1.0f 1.0f 0.0f }; // 漫射光参数
GLfloat LightPosition[] = { 0.0f 0.0f 0.0f 1.0f }; // 光源的位置
// 纹理图象
TEXTUREIMAGE skyImg;
TEXTUREIMAGE sunImg;
TEXTUREIMAGE rayImg;
TEXTUREIMAGE mercuImg;
TEXTUREIMAGE venusImg;
TEXTUREIMAGE earthImg;
TEXTUREIMAGE marsImg;
TEXTUREIMAGE jupiterImg;
TEXTUREIMAGE saturnImg;
TEXTUREIMAGE uranusImg;
TEXTUREIMAGE neptuneImg;
TEXTUREIMAGE moonImg;
GLuint texture[12]; // 纹理数组
// 星球速度定义
static float fSunSpin = 0.0f; // 太阳自转速度
static float fMercuSpin = 0.0f; // 水星自转速度
static float fMercuOrbit = 0.0f; // 水星公转速度
static float fVenusSpin = 0.0f; // 金星自转速度
static float fVenusOrbit = 0.0f; // 金星公转速度
static float fEarthSpin = 0.0f; // 地球自转速度
sta
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-01-03 22:46 Solar\
目录 0 2013-01-03 22:39 Solar\Debug\
文件 1364030 2013-01-03 22:39 Solar\Debug\Solar.exe
文件 1796136 2013-01-03 22:39 Solar\Debug\Solar.ilk
文件 50018 2013-01-03 22:39 Solar\Debug\Solar.obj
文件 3596652 2013-01-03 22:39 Solar\Debug\Solar.pch
文件 2802688 2013-01-03 22:39 Solar\Debug\Solar.pdb
文件 0 2012-11-22 22:00 Solar\Debug\Solar.sbr
文件 5415 2012-11-22 21:59 Solar\Debug\loadTexture.obj
文件 371068 2012-11-22 21:59 Solar\Debug\loadTexture.pch
文件 25600 2012-11-22 21:59 Solar\Debug\loadTexture.pdb
文件 15788 2012-11-22 22:00 Solar\Debug\test.obj
文件 230400 2013-01-03 22:39 Solar\Debug\vc60.idb
文件 94208 2013-01-03 22:39 Solar\Debug\vc60.pdb
目录 0 2013-01-03 22:07 Solar\Picture\
文件 196662 2012-11-22 21:59 Solar\Picture\Earth.bmp
文件 219218 2013-01-03 22:01 Solar\Picture\Jupiter.bmp
文件 144894 2013-01-03 21:54 Solar\Picture\Mars.bmp
文件 235282 2013-01-03 22:02 Solar\Picture\Mercu.bmp
文件 147894 2013-01-03 21:58 Solar\Picture\Moon.bmp
文件 49206 2012-11-22 21:59 Solar\Picture\Neptune.bmp
文件 196662 2012-11-22 21:59 Solar\Picture\Ray.bmp
文件 393270 2012-11-22 21:59 Solar\Picture\Saturn.bmp
文件 98360 2012-11-22 21:59 Solar\Picture\Sun.bmp
文件 393270 2012-11-22 21:59 Solar\Picture\Uranus.bmp
文件 133638 2013-01-03 22:00 Solar\Picture\Venus.bmp
文件 452454 2012-11-22 21:59 Solar\Picture\sky.bmp
文件 28425 2013-01-03 22:21 Solar\Solar.cpp
文件 3253 2012-11-22 21:59 Solar\Solar.dsp
文件 535 2012-11-22 21:59 Solar\Solar.dsw
文件 58368 2013-01-03 22:46 Solar\Solar.ncb
............此处省略5个文件信息
- 上一篇:sumo车辆仿真
- 下一篇:图像处理中使用多线程及图像分块实现加速运算
相关资源
- 通信原理的实验
- (中小型)校园网设计与配置
- 基于西门子PLC技术的污水处理厂控制
- 2015年上半年软件设计师真题及答案上
- 雷达原理与对抗技术\\雷达原理与对抗
- 华工数据结构课程设计
- 西北农林科技大学编译原理实验
-
优秀xm
l程序设计(学生信息管理) - quartus原理图设计方法设计的电子琴程
- 关于风景介绍的web网页 网页设计课程
- Zigbee无线通信实验指导书 (清华大学
- 企业人事管理系统源代码
- SIM7600CE_硬件设计手册_V1.04
- AM发射接收系统设计与仿真
- 基于BGP的企业网互连设计与实现毕业
- A53系统移植实验手册.pdf
- 天线理论--分析与设计下巴拉尼斯
- 中国科学技术大学计算机图形学大作
- PWM输出实验5 - +TIM8+TIM1输出PWM互补频率
- 基于DSP_Builder的FIR滤波器设计
- 2018年ACM国际大学生程序设计竞赛真题
- CA6140拨叉831008的课程设计 夹具图 毛坯
- 西南交大数据结构实验
- 基于ZigBee的智能家居物联网系统设计
- 基于MSP430的智能家居系统设计
- CA6140车床拨叉831008工艺及铣断双体夹
- ping程序的设计与实现.pdf
- 基于MSP430的手持式LCR数字电桥的设计
- DJCPTH实验软件及程序
- 数据库原理及应用课程设计
评论
共有 条评论