我有一个2D明星,我不知道如何将它围绕中心旋转,而且我也不知道如何使用键盘按键。另外我怎样才能让我的物体变大或变小一定比例(因为当我试图通过改变像素来实现时,星星出现问题)。在opengl中旋转一个明星(2D)
这是我的代码:
#include <GL/glut.h>
#include <GL/gl.h>
#include <GL/freeglut.h>
void init (void)
{
glClearColor(0.0,0.0,0.0,00);
glMatrixMode(GL_PROJECTION);
gluOrtho2D(0.0,200.0,0.0,200.0);
}
void LineSegment(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,1.0,1.0);
glBegin(GL_LINE_LOOP);
glVertex2i(20,120);
glVertex2i(180,120);
glVertex2i(45,20);
glVertex2i(100,190);
glVertex2i(155,20);
glEnd();
glFlush();
}
int main(int argc,char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowPosition(50,100);
glutCreateWindow("STAR");
init();
glutDisplayFunc(LineSegment);
glutMainLoop();
return 0;
}
对于旋转,有几种方法可以做到这一点 - 旋转对象的顶点或旋转,它的坐标空间存在于。你知道任何有助于旋转的OpenGL例程吗? – user1118321 2012-07-10 04:23:27
没有即时通讯新的OpenGL,我想旋转它与一个关键的圆周围,并与另一个关键使STAR更大或更小 – 2012-07-10 07:41:22