将圆环颜色改为红色而不是灰色 [英] change torus color into Red instead grey color

查看:106
本文介绍了将圆环颜色改为红色而不是灰色的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述





请告诉我,如何将圆环颜色更改为红色而不是灰色,以及需要使用哪些命令行。





谢谢



以下是代码



Hi,

Kindly let me know, how do I change torus color into Red instead Grey color and what command lines are required to do the same.


Thank you

Here are codes

#include <gl/glut.h>
#include <stdlib.h>

static int spin=0;

void init(void)
{
	glClearColor(0.0, 0.0, 0.0, 0.0);
	glShadeModel(GL_SMOOTH);
	glEnable(GL_LIGHTING);
	glEnable(GL_LIGHT0);
	glEnable(GL_DEPTH_TEST);
}

void display(void)
{
	GLfloat position[] = {0.0, 0.0, 1.5, 1.0};

	glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
	glPushMatrix();
	gluLookAt(0.0, 0.0, 5.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);
	glPushMatrix();
	glRotated((GLdouble) spin, 1.0, 0.0, 0.0);
	glLightfv(GL_LIGHT0, GL_POSITION, position);

	glTranslated(0.0, 0.0, 1.5);
	glDisable(GL_LIGHTING);

	glutWireCube(0.0);
	glEnable(GL_LIGHTING);	
	glPopMatrix();

	glutSolidTorus(0.275, 0.85, 8, 5);
	glPopMatrix();
	glFlush();
}

void reshape (int w, int h)
{
	glViewport(0,0, (GLsizei) w, (GLsizei) h);
	glMatrixMode(GL_PROJECTION);
	glLoadIdentity();
	gluPerspective(40.0, (GLfloat) w / (GLfloat) h, 1.0, 20.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)
		{
			glEnable(GL_LIGHTING);	
			spin = (spin + 30) % 360;
			glutPostRedisplay();
		}
		break;

	default:
		break;	
	}
}

void keyboard(unsigned char key, int x, int y)
{
	switch(key)
	{
	case 27:
		exit(0);
		break;	
	}
}

int main(int argc, char** argv)
{
	glutInit(&argc, argv);
	glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB | GLUT_DEPTH);
	glutInitWindowSize(500,500);
	glutInitWindowPosition(100,100);
	glutCreateWindow("My Torus with Mouse Click");
	glutDisplayFunc(display);
	init();	
	glutReshapeFunc(reshape);
	glutMouseFunc(mouse);
	glutKeyboardFunc(keyboard);
	glutMainLoop();
	
	return 0;
}

推荐答案

看看这里: http://cs.lmu.edu/~ray/notes/openglexamples/ [ ^ ]


这篇关于将圆环颜色改为红色而不是灰色的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆