这是一个用openGL写的一个电梯运动的实验,实现了电梯的上下移动的模拟!
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-09-04 08:49 Elevator
目录 0 2013-09-04 08:48 ElevatorDebug
文件 238592 2013-06-03 22:44 ElevatorDebugElevator.exe
文件 2140176 2013-06-03 22:44 ElevatorDebugElevator.ilk
文件 6048768 2013-06-03 22:44 ElevatorDebugElevator.pdb
目录 0 2013-09-04 08:49 ElevatorElevator
文件 69488640 2013-06-04 00:41 ElevatorElevator.sdf
文件 891 2013-06-03 19:20 ElevatorElevator.sln
文件 21504 2013-06-04 00:41 ElevatorElevator.suo
文件 2571 2013-06-04 00:28 ElevatorElevatorAnimation.cpp
文件 352 2013-06-03 22:21 ElevatorElevatorAnimation.h
目录 0 2013-09-04 08:49 ElevatorElevatorDebug
文件 16662 2013-06-03 22:44 ElevatorElevatorDebugAnimation.obj
文件 4498 2013-06-03 22:44 ElevatorElevatorDebugcl.command.1.tlog
文件 74142 2013-06-03 22:44 ElevatorElevatorDebugCL.read.1.tlog
文件 6354 2013-06-03 22:44 ElevatorElevatorDebugCL.write.1.tlog
文件 667 2013-06-03 19:21 ElevatorElevatorDebugElevator.exe.embed.manifest
文件 732 2013-06-03 19:21 ElevatorElevatorDebugElevator.exe.embed.manifest.res
文件 381 2013-06-03 22:44 ElevatorElevatorDebugElevator.exe.intermediate.manifest
文件 68 2013-06-03 22:44 ElevatorElevatorDebugElevator.lastbuildstate
文件 2466 2013-06-03 22:44 ElevatorElevatorDebugElevator.log
文件 57308 2013-06-03 22:34 ElevatorElevatorDebugElevator.obj
文件 36962304 2013-06-03 19:21 ElevatorElevatorDebugElevator.pch
文件 85036 2013-06-03 19:21 ElevatorElevatorDebugElevator.res
文件 707 2013-06-03 19:21 ElevatorElevatorDebugElevator.vcxprojResolveAssemblyReference.cache
文件 0 2013-06-03 19:21 ElevatorElevatorDebugElevator.write.1.tlog
文件 56529 2013-06-03 22:34 ElevatorElevatorDebugElevatorDoc.obj
文件 44655 2013-06-03 22:39 ElevatorElevatorDebugElevatorView.obj
文件 206 2013-06-03 19:21 ElevatorElevatorDebugElevator_manifest.rc
文件 2 2013-06-03 22:44 ElevatorElevatorDebuglink-cvtres.read.1.tlog
文件 2 2013-06-03 22:44 ElevatorElevatorDebuglink-cvtres.write.1.tlog
............此处省略89个文件信息
#include “StdAfx.h“
#include “Animation.h“
CAnimation::CAnimation(void)
{
eleTopLeftX = -2.0f;
eleTopLeftY = 5.7f;
}
CAnimation::~CAnimation(void)
{
}
// 绘制背景图
void CAnimation::drawBack()
{
GLfloat topLeftX = -6.0f;
GLfloat topLeftY = 3.6f;
GLfloat topRightX = -2.0f;
GLfloat topRightY = 3.6f;
glColor3f(0.4f0.4f0.4f);
glLineWidth(1);
glBegin(GL_QUADS); // 绘制三角形
glVertex3f(-6.0f 5.7f 0.0f); // 左上
glVertex3f( 6.0f 5.7f 0.0f); // 右上
glVertex3f( 6.0f 5.6f 0.0f); // 右下
glVertex3f(-6.0f 5.6f 0.0f);
glEnd();
for(int i = 0; i < 4; i++)
{
glBegin(GL_QUADS);
glVertex3f(topLeftX topLeftY 0);
glVertex3f(topRightX topRightY 0);
glVertex3f(topRightX topRightY - 0.1 0);
glVertex3f(topLeftX topLeftY - 0.1 0);
glEnd();
glBegin(GL_QUADS);
glVertex3f(topLeftX * -1 topLeftY 0);
glVertex3f(topRightX * -1 topRightY 0);
glVertex3f(topRightX * -1 topRightY - 0.1 0);
glVertex3f(topLeftX * -1 topLeftY - 0.1 0);
glEnd();
topLeftY -= 2.2;
topRightY -= 2.2;
}
glBegin(GL_QUADS); // 绘制三角形
glVertex3f(-6.0f topLeftY 0.0f); // 左上
glVertex3f( 6.0f topLeftY 0.0f); // 右上
glVertex3f( 6.0f topLeftY - 0.1 0.0f); // 右下
glVertex3f(-6.0f topLeftY - 0.1 0.0f);
glEnd();
glBegin(GL_QUADS);
glVertex3f(-2.1 5.7 0);
glVertex3f(-2.0 5.7 0);
glVertex3f(-2.0 -5.3 0);
glVertex3f(-2.1 -5.3 0);
glEnd();
glBegin(GL_QUADS);
glVertex3f(2.1 5.7 0);
glVertex3f(2.0 5.7 0);
glVertex3f(2.0 -5.3 0);
glVertex3f(2.1 -5.3 0);
glEnd();
}
void CAnimation::drawElevator()
{
glColor3f(0.0f0.0f0.0f);
glBegin(GL_LINES);
glVertex3f(eleTopLeftX + 2 eleTopLeftY 0);
glVertex3f(eleTopLeftX + 2 eleTopLeftY - 2.2 0);
glEnd();
glColor3f(0.3f0.4f0.4f);
glBegin(GL_QUADS);
glVertex3f(eleTopLeftX eleTopLeftY 0.0f);
glVertex3f(eleTopLeftX + 4 eleTopLeftY 0.0f);
glVertex3f(eleTopLeftX + 4 eleTopLeftY - 2.2 0.0f);
glVertex3f(eleTopLeftX eleTopLeftY - 2.2 0.0f);
glEnd();
}
void CAnimation::nextFram(int thisFloor int nextFloor)
{
int isDown = 0;
GLfloat temp = 0;
if(thisFloor - nextFloor > 0)
isDown = 1;
else
isDown = 0;
if(isDown)
{
temp = 5.7 + (nextFloor - 5) * 2.2 + 0.1 ;
if(this->eleTopLeftY >= temp)
this->eleTopLeftY -= 0.04;
}
else
{
temp = 5.7 + (nextFloor - 5) * 2.2 ;
if(this->eleTopLeftY < temp)
this->eleTopLeftY += 0.04;
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2013-09-04 08:49 Elevator
目录 0 2013-09-04 08:48 ElevatorDebug
文件 238592 2013-06-03 22:44 ElevatorDebugElevator.exe
文件 2140176 2013-06-03 22:44 ElevatorDebugElevator.ilk
文件 6048768 2013-06-03 22:44 ElevatorDebugElevator.pdb
目录 0 2013-09-04 08:49 ElevatorElevator
文件 69488640 2013-06-04 00:41 ElevatorElevator.sdf
文件 891 2013-06-03 19:20 ElevatorElevator.sln
文件 21504 2013-06-04 00:41 ElevatorElevator.suo
文件 2571 2013-06-04 00:28 ElevatorElevatorAnimation.cpp
文件 352 2013-06-03 22:21 ElevatorElevatorAnimation.h
目录 0 2013-09-04 08:49 ElevatorElevatorDebug
文件 16662 2013-06-03 22:44 ElevatorElevatorDebugAnimation.obj
文件 4498 2013-06-03 22:44 ElevatorElevatorDebugcl.command.1.tlog
文件 74142 2013-06-03 22:44 ElevatorElevatorDebugCL.read.1.tlog
文件 6354 2013-06-03 22:44 ElevatorElevatorDebugCL.write.1.tlog
文件 667 2013-06-03 19:21 ElevatorElevatorDebugElevator.exe.em
文件 732 2013-06-03 19:21 ElevatorElevatorDebugElevator.exe.em
文件 381 2013-06-03 22:44 ElevatorElevatorDebugElevator.exe.intermediate.manifest
文件 68 2013-06-03 22:44 ElevatorElevatorDebugElevator.lastbuildstate
文件 2466 2013-06-03 22:44 ElevatorElevatorDebugElevator.log
文件 57308 2013-06-03 22:34 ElevatorElevatorDebugElevator.obj
文件 36962304 2013-06-03 19:21 ElevatorElevatorDebugElevator.pch
文件 85036 2013-06-03 19:21 ElevatorElevatorDebugElevator.res
文件 707 2013-06-03 19:21 ElevatorElevatorDebugElevator.vcxprojResolveAssemblyReference.cache
文件 0 2013-06-03 19:21 ElevatorElevatorDebugElevator.write.1.tlog
文件 56529 2013-06-03 22:34 ElevatorElevatorDebugElevatorDoc.obj
文件 44655 2013-06-03 22:39 ElevatorElevatorDebugElevatorView.obj
文件 206 2013-06-03 19:21 ElevatorElevatorDebugElevator_manifest.rc
文件 2 2013-06-03 22:44 ElevatorElevatorDebugli
文件 2 2013-06-03 22:44 ElevatorElevatorDebugli
............此处省略89个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)