OpenGL例子:机器人手臂
2017-04-02 12:22
411 查看
#include <windows.h> #include <GL/gl.h> #include <GL/glu.h> #include <GL/glut.h> #include <cstdlib> #include <cstdio> #include <cmath> static int shoulder = 0, elbow = 0; void init(void){ glClearColor(0.0,0.0,0.0,0.0); glShadeModel(GL_FLAT);//单调着色 } void display(void){ glClear(GL_COLOR_BUFFER_BIT); glPushMatrix(); glTranslatef(-1.0,0.0,0.0); glRotatef((GLfloat)shoulder,0.0,0.0,1.0); glTranslatef(1.0,0.0,0.0); glPushMatrix(); glScalef(2.0,0.4,1.0); glutWireCube(1.0); glPopMatrix(); glTranslatef(1.0,0.0,0.0); glRotatef((GLfloat)elbow,0.0,0.0,1.0); glTranslatef(1.0,0.0,0.0); glPushMatrix(); glScalef(2.0,0.4,1.0); glutWireCube(1.0); glPopMatrix(); glPopMatrix(); glutSwapBuffers(); } void reshape(int w,int h){ glViewport(0,0,(GLsizei)w,(GLsizei)h); glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(65.0,(GLfloat)w/(GLfloat)h,1.0,20.0); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glTranslatef(0.0,0.0,-5.0); } void keyboard(unsigned char key,int x,int y){ switch (key){ case 's': shoulder = (shoulder + 5) % 360; glutPostRedisplay(); break; case 'S': shoulder = (shoulder - 5) % 360; glutPostRedisplay(); break; case 'e': elbow = (elbow + 5) % 360; glutPostRedisplay(); break; case 'E': elbow = (elbow - 5) % 360; glutPostRedisplay(); break; default: break; } } int main(int argc,char** argv){ glutInit(&argc,argv); glutInitDisplayMode(GLUT_DOUBLE|GLUT_RGB);//双缓冲 glutInitWindowSize(500,500); glutInitWindowPosition(100,100); glutCreateWindow(argv[0]); init(); glutDisplayFunc(display); glutReshapeFunc(reshape); glutKeyboardFunc(keyboard); glutMainLoop(); return 0; }
相关文章推荐
- Opengl 模拟机器人手臂
- opengl 机器人手臂
- 用OpenGL绘制旋转的机器人手臂
- opengl绘制一个机器人手臂的一些问题
- 关于红宝书上机器人手臂的例子和矩阵变换
- OpenGL红宝书例子2.2 uniform变量的使用
- ubuntu12.04上Using cairo with OpenGL 例子编译
- QT+OPenGL绘图例子
- OpenGL学习笔记 (1) —— 在VS2008下的两个简单例子
- 在linux下将OpenGL超级宝典里的例子用eclipse打开
- c语言在qt环境下调用opengl es 2.0 api创建机器人手臂
- OpenGL Programming Guide- Red Book 例子程序库 -系列- 3-Chapter 2Drawing Geometric Objects-Part1
- OpenGL “太阳、地球和月亮”天体运动动画 例子
- opengl绘制移动的安卓机器人
- opengl 模板测试的几个例子
- qt编译opengl例子报错no such file
- openGL 例子
- opengl 例子学习笔记
- opengl视图变化 非常清楚的一例子
- OpenMesh学习笔记5 OpenMesh+OpenGL的一个例子