C GLUT中的多个对象
我想把一个物体(立方体)乘以一个特定的数字,比如说25,我有一个立方体的代码,它可以工作,但我不知道如何制作更多。我是个新来的暴饮暴食者C GLUT中的多个对象,c,glut,C,Glut,我想把一个物体(立方体)乘以一个特定的数字,比如说25,我有一个立方体的代码,它可以工作,但我不知道如何制作更多。我是个新来的暴饮暴食者 #include <GL/gl.h> #include <GL/glut.h> #include <stdlib.h> void initGL(int width, int height) { glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective
#include <GL/gl.h>
#include <GL/glut.h>
#include <stdlib.h>
void initGL(int width, int height)
{
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(45.0f,(GLfloat)width/(GLfloat)height,2.0f, 100.0f);
glMatrixMode(GL_MODELVIEW);
}
static void display(void)
{
glLoadIdentity();
glPushMatrix();
glTranslatef(0.0,0.0,-10);
glRotatef(60,1,0,0);
glRotatef(60,0,1,0);
glutSolidCube(2);
glPopMatrix();
glFlush();
}
static void idle(void)
{
glutPostRedisplay();
}
int main(int argc, char *argv[])
{
int width = 640;
int height = 480;
glutInit(&argc, argv);
glutInitWindowSize(width, height);
glutInitWindowPosition(10,10);
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
glutCreateWindow("GLUT cube");
glutDisplayFunc(display);
glutIdleFunc(idle);
initGL(width, height);
glutMainLoop();
return EXIT_SUCCESS;
}
#包括
#包括
#包括
void initGL(整数宽度、整数高度)
{
glMatrixMode(GL_投影);
glLoadIdentity();
透视图(45.0f,(GLfloat)宽度/(GLfloat)高度,2.0f,100.0f);
glMatrixMode(GLU模型视图);
}
静态无效显示(无效)
{
glLoadIdentity();
glPushMatrix();
glTranslatef(0.0,0.0,-10);
glRotatef(60,1,0,0);
glRotatef(60,0,1,0);
立体立方体(2);
glPopMatrix();
glFlush();
}
静态无效空闲(无效)
{
再发现();
}
int main(int argc,char*argv[])
{
整数宽度=640;
内部高度=480;
glutInit(&argc,argv);
glutInitWindowSize(宽度、高度);
位置(10,10);
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE);
glutCreateWindow(“GLUT立方体”);
glutDisplayFunc(显示器);
glutIdleFunc(空闲);
initGL(宽度、高度);
glutMainLoop();
返回退出成功;
}
如果有更详细的指南,我将非常感谢您的分享。每次您调用
glutSolidCube()
,它都会绘制一个立方体。如果希望显示多个多维数据集,则需要在display()
的实现中多次调用该函数
(确保在每次调用之间更改模型矩阵!否则,多维数据集将在同一个位置结束。)您所说的“乘法”是什么意思?你的意思是增加它的大小,还是画多个对象?同一个对象的多个。所以我会复制粘贴显示内容到自身中并更改坐标?