openGL学习笔记3
来源:互联网 发布:分层数据分析 编辑:程序博客网 时间:2024/05/17 02:26
三、视口变换
相关函数
glLoadIdentity();
将当前的用户坐标系的原点移到了屏幕中心:类似于一个复位操作。
void gluLookAt(GLdouble eyex,GLdouble eyey,GLdouble eyez,GLdouble centerx,GLdouble centery,GLdouble centerz,GLdouble upx,GLdouble upy,GLdouble upz)
视点转换
glScalef(x,y,z)
对模型进行xyz方向上的压缩拉伸
glViewport(0,0,GLsizei(w),GLsizei(h))
以左下角为原点选择绘图区域
glMatrixMode(GL_PROJECTION)
设置当前操作的矩阵 GL_PROJECTION为投影矩阵 GL_MODELVIEW 模型视图矩阵
#include<Windows.h>#include<gl\glut.h>#pragma comment(linker, "/subsystem:\"windows\" /entry:\"mainCRTStartup\"")void init(void){glClearColor(0.0,0.0,0.0,0.0);glShadeModel(GL_FLAT);}void disply(){glClear(GL_COLOR_BUFFER_BIT);glColor3f(1.0,1.0,1.0);glLoadIdentity();//坐标系复位gluLookAt(0.0,0.0,5.0,0.0,0.0,0.0,0.0,1.0,0.0);//视点转换 glScalef(1.0,1.0,1.0);//模型在Y方向拉伸为原来的2倍glutWireCube(1.0);//绘制边长为1的线框立方体glFlush();}void reshape(int w,int h){glViewport(0,0,GLsizei(w),GLsizei(h));//以左下角为原点选择绘图区域glMatrixMode(GL_PROJECTION);//指定当前操作矩阵为投影矩阵glLoadIdentity();//glFrustum(-1.0,1.0,-1.0,1.0,1.5,20.0);//把当前矩阵转变成透视矩阵//gluPerspective(30,1.0,1.5,50);glOrtho(-1.0,1.0,-1.0,1.0,1.5,20);glMatrixMode(GL_MODELVIEW);//对模型视图矩阵进行操作 }int main(int argc, char** argv){ glutInit(&argc,argv); glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);//指定显示模式 glutInitWindowSize(500,500);//指定窗口大小 glutInitWindowPosition(100,100);//指定窗口左上角位置 glutCreateWindow("OpenGL");//创建窗口标题为OpenGL的窗口 init(); glutDisplayFunc(disply); glutReshapeFunc(reshape); glutMainLoop(); return 0;}
0 0
- opengl学习笔记(3)
- openGL学习笔记3
- OpenGL ES2学习笔记3
- opengl学习笔记3-3-绘制三角形
- Opengl ES 学习笔记 3:纹理贴图
- OpenGL学习笔记 (3) —— 着色
- Android的OpenGL学习笔记(3)
- OpenGL 3D 超级宝典学习笔记
- OpenGL 学习笔记(3)绘制几何物体
- OpenGL学习笔记(5)3D基本概念
- OpenGL 学习笔记(3)绘制几何物体
- OPENGL学习笔记1
- OpenGL学习笔记
- OpenGL 学习笔记
- OpenGL学习笔记
- OpenGL 学习笔记(1)
- OpenGL学习笔记(一)
- OpenGL学习笔记(二)
- Java之GUI编程
- 二叉树的性质
- SQL Server2005 异常处理机制(Begin try Begin Catch)
- UVA 1399 - Puzzle(AC自动机+DP)
- from makefile which i did not make it as a file
- openGL学习笔记3
- 磁盘与文件系统
- Access restriction: The type * is not accessible due to restrict,报错问题,只试过第二种,OK。
- HDU-4968 Improving the GPA 暴力枚举
- (leetcode)Linked List Cycle
- list add方法
- 如何培养孩子主动学习兴趣
- OpenERP Server Developers Documentation之Form Views Guidelines(表单视图参考)
- POJ 3623 Best Cow Line, Gold(贪心)