- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
#include stdafx.h
#include glut.h
void reshape(int w,int h);
void init();
void display();
void mytime(int value);
float thera=0;
int flag=1;
float t=0;
int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
UNREFERENCED_PARAMETER(hPrevInstance);
UNREFERENCED_PARAMETER(lpCmdLine);
char *argv[] = {hello , };
int argc = 2; // must/should match the number of strings in argv
glutInit(argc, argv); //初始化GLUT库;
//设置深度检测下的显示模式;(缓冲,颜色类型,深度值)
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB|GLUT_DEPTH);
glutInitWindowSize(600, 500);
glutInitWindowPosition(1024 / 2 - 250, 768 / 2 - 250);
glutCreateWindow(简单机器人); //创建窗口,标题为“…”;
glutReshapeFunc(reshape);
init();
glutDisplayFunc(display); //用于绘制当前窗口;
glutTimerFunc(100,mytime,10);
glutMainLoop(); //表示开始运行程序,用于程序的结尾;
return 0;
}
void reshape(int w,int h)
{ glViewport(0,0,w,h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-10,10,-10*h/w,10*h/w,1,200); //定义三维观察体
//gluPerspective(60,w/h,1,200);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}
void init()
{
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glEnable(GL_BLEND);
glEnable(GL_POINT_SMOOTH);
glHint(GL_POINT_SMOOTH_HINT, GL_NICEST);
glEnable(GL_LINE_SMOOTH);
glHint(GL_LINE_SMOOTH_HINT, GL_NICEST);
glEnable(GL_POLYGON_SMOOTH);
glLineWidth(3);
glEnable(GL_DEPTH_TEST); //启用深度检测
}
void mytime(int value)
{
//your code here;
t-=0.05;
if(t=-20) t=0;
if ((thera=45)||(thera=-45))
flag=-flag;
if (flag0)
thera+=1;
if (flag0)
thera-=1;
glutPostRedisplay();
glutTimerFunc(10,mytime,10);
}
void display()
{
/* glClear(GL_COLOR_BUFFER_BIT);*/ //清屏
/*启用深度检测下的清屏模式*/glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW); //矩阵模式设置
glLoadIdentity(); //清空矩阵堆栈
gluLookAt(-10,0,-7,0.0,0.0,0.0,0.0,1.0,0.0); //设置视点
//your code here;
glTranslatef(0,0,t);
原创力文档


文档评论(0)