图形旋转"/>
openGL拆分屏幕与图形旋转
效果图:
#include<gl/glut.h>
class wcPT2D
{
public:
GLfloat x,y;
};
void init()
{
glClearColor(1.0,1.0,1.0,0.0);//窗口显示屏背景为白色
glMatrixMode(GL_PROJECTION);
gluOrtho2D(-100.0,100.0,-100.0,100.0);//根据屏幕对世界坐标系的界限进行裁剪
glMatrixMode(GL_MODELVIEW);//构造几何变换矩阵设置模式
}
void triangle(wcPT2D *verts)
{
GLint k;
glBegin(GL_TRIANGLES);
for(k=0;k<3;k++)
glVertex2f(verts[k].x,verts[k].y);
glEnd();
}
void displayfcn(void)
{
wcPT2D verts[3]={{-50.0,-25.0},{50.0,-25.0},{0.0,50.0}};
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(0.0,0.0,1.0);
glViewport(0,0,300,300);//设置左视窗
triangle(verts);//画三角形
glColor3f(1.0,0.0,0.0);
glViewport(300,0,300,300);//设置右视窗
glRotatef(90.0,0.0,0.0,1.0);//依据Z轴旋转90度
triangle(verts);
glFlush();
}
void main(int argc,char** argv)
{
glutInit(&argc,argv);
glutInitWindowSize(600,300);
glutInitWindowPosition(50,50);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutCreateWindow("666");
init();
glutDisplayFunc(displayfcn);
glutMainLoop();
}
资源下载地址:
更多推荐
openGL拆分屏幕与图形旋转
发布评论