OpenGL动画生成最基本的方式就是,利用ilde函数进行重新绘制

那么很简单就是利用

glutPostRedisplay();

函数进行搞定

废话不多说,看程序

#include <GL/glut.h>
#include <math.h>
#define DEG_TO_RAD 0.017453
GLfloat theta = 0.0;
void display()
{glClear(GL_COLOR_BUFFER_BIT);glBegin(GL_POLYGON);glVertex2f(sin(DEG_TO_RAD*theta),-cos(DEG_TO_RAD*theta));glVertex2f(-cos(DEG_TO_RAD*theta),-sin(DEG_TO_RAD*theta));glVertex2f(-sin(DEG_TO_RAD*theta),cos(DEG_TO_RAD*theta));glVertex2f(cos(DEG_TO_RAD*theta),sin(DEG_TO_RAD*theta));glEnd();//flush GL  buffersglFlush();
}
void myidle()
{theta += 0.2;if(theta>360.0)theta -= 360.0;glutPostRedisplay();
}
void init()
{//set color to blackglClearColor(0.0,0.0,0.0,0.0);//set fill color to whiteglColor3f(1.0,1.0,0.0);glMatrixMode(GL_PROJECTION);glLoadIdentity();//gluOrtho2D(-1.0,1.0,-1.0,1.0);}
int main(int argc, char *argv[])
{/* code */glutInit(&argc,argv);glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);glutInitWindowSize(500,500);glutInitWindowPosition(0,0);glutCreateWindow("hello");glutDisplayFunc(display);init();glutIdleFunc(myidle);glutMainLoop();return 0;
}

程序本生一点也不难,只要高清楚矩形的四点的坐标如何表示就可以

OpenGL中简单动画之矩形旋转相关推荐

  1. 实验二:OpenGL的简单动画

    实验二:OpenGL的简单动画 一.实验目的 1.掌握OpenGL的闲置函数. 2.掌握OpenGL的时间函数. 3.掌握OpenGL的简单动画功能. 4.了解OpengGL裁剪窗口.视区.显示窗 口 ...

  2. OpenGL中平移函数glTranslatef()、旋转函数glRotatef()的理解

    https://blog.csdn.net/tan_handsome/article/details/50614146 void glTranslatef(GLfloat x,GLfloat y,GL ...

  3. OpenGL中平移函数glTranslatef()、旋转函数glRotatef()的理解(非常好的文章)

    void glTranslatef(GLfloat x,GLfloat y,GLfloat z); 函数功能:沿X轴正方向平移x个单位(x是有符号数)   沿Y轴正方向平移y个单位(y是有符号数)   ...

  4. Learn OpenGL(七)——OpenGL中使用着色器的基本步骤及GLSL渲染简单示例

    OpenGL着色语言(OpenGL Shading Language,GLSL)是用来在OpenGL中着色编程的语言,是一种具有C/C++风格的高级过程语言,同样也以main函数开始,只不过执行过程是 ...

  5. 关于在Opengl中先平移后旋转和先旋转后平移的效果不一样的原因

    一.现象 在OpenGL中先移动后旋转与先旋转后移动的最终效果是并不一定相同的,也就是说在Opengl中如果调用函数glTranslatef和函数glRotatef的次序不同,即使参数一样,效果也可能 ...

  6. three.js创建简单动画(vue中使用three.js59)

    简单动画 1.demo效果 2.知识要点 2.1 three.js动画分类 2.1.1基础动画 2.1.2移动相机 2.1.3变形和蒙皮 2.1.4加载外部动画 2.2 基础动画实现方式 2.2.1 ...

  7. c语言中的简单动画(带有源码)

    c语言中的简单动画(带有源码) 动画 1. 怎样实现动画 相信大家已经对动画的原理已经不陌生了.想要目标物体动起来,只需要逐个播放目标物体每一时刻位 置的图片.只要播放的速度足够快,人们就会在视觉上认 ...

  8. OpenGL中的平移旋转缩放

    1.opengl中缩放使用的函数是glScalef 其原型为void glScalef(GLfloat  x,  GLfloat  y,  GLfloat  z); 该函数表示模型在各轴上进行扩大和缩 ...

  9. html中flash的简单动画效果,css 动画效果

    要搞就搞明白,一知半解时停止研究 损失最大 css3意义: CSS3 动画 通过 CSS3,我们能够创建动画,这可以在许多网页中取代动画图片.Flash 动画以及 JavaScript. 重点知识 C ...

最新文章

  1. gcc 编译 java,编译lineage,gcc的版本问题
  2. 详解FTP服务完成Linux和WIN10之间的信息传输(实验详解)
  3. STL编程:C++的忠告!
  4. Java 8仍然需要LINQ吗? 还是比LINQ更好?
  5. gulp学习笔记,基本使用流程,基本函数,使用监听、插件
  6. NAS: One-Shot
  7. ZUST蓝桥杯校内选拔赛(java,c)安吉校区
  8. 【POJ 1228】Grandpa's Estate【稳定凸包】
  9. OJ(Online Judge)系统及ACM测试题库大全
  10. 基于Java坦克大战小游戏设计(3)
  11. Xcode如何实现iphone真机测试
  12. 【车道线检测】霍夫变换(HoughLines)检测直线详解
  13. 百度地图点击获取定位信息以及定位的经纬度
  14. C语言课设分享:图片加载
  15. 图神经网络推荐方向--论文代码读记
  16. UE4入门学习4:C++编程介绍
  17. Mac?Windows?游戏本?大学生到底该如何选择适合自己的笔记本
  18. WOL网络唤醒在微星主板上开启 - ubuntu 20.04
  19. Linux上实现CPU亲缘
  20. Lemur的disk index

热门文章

  1. [R]指令总结-查看系统运行时间
  2. 总结5个比较好用的JAVA报表工具
  3. 解决 RIDE 执行输出日志中文乱码(RIDE 1.7.4.2)
  4. 2019ccpc秦皇岛赛区K. MUV LUV UNLIMITED(博弈)
  5. java迭代器和for循环区别_迭代器和增强for循环
  6. [C语言指针练习二]字符串逆序,使用指针,写一个函数,可以逆序字符串的内容。
  7. netty系列之:netty实现http2中的流控制
  8. ubuntu 禁用笔记本触摸板 hp4321s
  9. c语言中如何将字符串转成16进制,用c语言写一个函数把十进制转换成十六进制,该如何处理...
  10. 水电抄表预付费一体化平台