"); //-->
对图形点鼠标左键矩形会转动,中键停止。

#include <GL/glut.h>
#include <stdlib.h>
static GLfloat spin = 0.0;
void init()
{
glClearColor(0.0, 0.0, 0.0, 0.0);
glShadeModel(GL_FLAT);
}
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glPushMatrix();
glRotatef(spin, 0.0, 0.0, 1.0);
glColor3f(1.0, 1.0, 1.0);
glRectf(-25.0, -25.0, 25.0, 25.0);
glPopMatrix();
glutSwapBuffers();
}
void spinDisplay(void)
{
spin = (spin + 2.0) ;
if (spin > 360.0)
spin = spin - 360.0;
glutPostRedisplay();
}
void reshape(int w, int h)
{
glViewport(0, 0, (GLsizei) w, (GLsizei) h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(-50.0, 50.0, -50.0, 50.0, -1.0, 1.0);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
}
void mouse(int button, int state, int x, int y)
{
switch(button)
{
case GLUT_LEFT_BUTTON :
if(state == GLUT_DOWN)
glutIdleFunc(spinDisplay);
break;
case GLUT_MIDDLE_BUTTON :
if(state == GLUT_DOWN)
glutIdleFunc(NULL);
break;
default:
break;
}
}
int main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
glutInitWindowSize(250, 250);
glutInitWindowPosition(100, 100);
glutCreateWindow("OpenGL Test");
init();
glutDisplayFunc(display);
glutReshapeFunc(reshape);
glutMouseFunc(mouse);
glutMainLoop();
return 0;
}
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
两家半导体公司量子计算机的故事
以爱的名义,我们同居(转帖)值得一看哦。
力科示波器及其在嵌入式系统中的应用(东南大学)
如何在RK3576开发板上运行TinyMaix :超轻量级推理框架
SL811U盘读写开发板
共同学习VxWorks
浅析新材料在高密度电子封装上的应用及发展前景
Molex简化户外安装的Quasar OptiX现场安装连接器在贸泽开售
走进MIPS(华中科技大学)
德州仪器预测性电池管理技术:使电池供电电子设备续航提升高达30%
未来在你手中-ARM,数字世界架构提供商(东南大学)
联芯通欧标新能源车EVCC PLC芯片累计出货突破100万套
神洲DS-600P型数字卫星电视接收机电源电路
可重编程半导体在其供应链中的旅程
DSD660型“村村通”数字卫星电视接收机电源电路
锦电JBS-627/JBS-627型数字卫星电视接收机电源电路
诚聘
半导体供应链面临变革:增长与风险
嵌入式实时系统开发的正确选择
百胜P-3500型数字卫星电视接收机电源电路
浅谈多层印制电路板的设计和制作
石墨栅极增强石墨烯迁移率以匹配半导体异质结构
佳能集团发布2025年第二季度财报,影像业务领域持续增长
金泰克KT-D8320型数字卫星电视接收机电源电路
西门子Veloce CS助力Arm Neoverse计算子系统验证与确认
走进MIPS(东南大学)
共同学习VxWorks
取代表面涂(镀)覆而改进的有机可焊性保护剂
如何在IC设计行业成功发展(华中科技大学)
浅谈电视机各式保护电路