OpenGL中的窗口与视口
来源:互联网 发布:数据库设计流程软件 编辑:程序博客网 时间:2024/06/15 22:24
// 目标:测试OpenGL窗口视口坐标// 结果:glutInitWindowSize(640, 480); 指定的是windows概念中窗口(看得见,可移动,最大化,最小化等操作)大小,以像素为单位// OpenGL中的窗口和视口是逻辑上的概念,其中窗口范围是画图时指定顶点坐标使用的坐标,而视口范围是将windows中概念中实际// 窗口映射成的范围#define GLUT_DISABLE_ATEXIT_HACK#include <gl/glut.h>void myInit(void){glClearColor(1.0, 1.0, 1.0, 0.0); // 设置背景色为白色glColor3f(0.0f, 0.0f, 0.0f); // 绘图颜色为黑色glPointSize(4.0); // 设置点大小为4x4像素// 1. 如果不做任何处理,OpenGL默认坐标范围为 x=[-1,1] y=[-1,1]// 2. 只指定世界窗口坐标范围,默认视口坐标范围与世界窗口一样,按世界窗口绘图即可/*glMatrixMode(GL_PROJECTION);glLoadIdentity();gluOrtho2D(0.0, 500, 0.0, 100);*/ // 3. 同时指定世界窗口坐标和视口范围,会发生从世界窗口坐标转换为视口坐标,按世界窗口绘图即可 glMatrixMode(GL_PROJECTION); glLoadIdentity();gluOrtho2D(-2, 2, -1, 1);glViewport(73, -250, 11, 100);}// 重绘函数void myDisplay(void){glClear(GL_COLOR_BUFFER_BIT); // 清屏// 1. 测试不做任何处理时,窗口与视口范围相同// OpenGL默认坐标范围为 x=[-1,1] y=[-1,1]/*glBegin(GL_QUADS);glVertex2f(-0.5, 0.5);glVertex2f( 0.5, 0.5);glVertex2f( 0.5, -0.5);glVertex2f(-0.5, -0.5);glEnd();*/// 2. 测试只指定世界窗口坐标范围,窗口与视口范围/*glBegin(GL_LINES);glVertex2f(0, 0);glVertex2f(500, 100);glEnd();*/// 3. 测试同时指定世界窗口坐标和视口范围glBegin(GL_LINES);glVertex2f(-2, -1);glVertex2f(2, 1);glEnd();glFlush();}void main(int argc, char *argv[]){glutInit(&argc, argv); // 初始化glut工具箱glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB); // 设置显示模式glutInitWindowSize(640, 480); // 设置窗口大小glutInitWindowPosition(100, 150); // 设置窗口在屏幕上的位置glutCreateWindow("my first attempt"); // 创建窗口glutDisplayFunc(myDisplay); // 注册重绘函数myInit();glutMainLoop(); // 进入主循环}
0 0
- OpenGL中的窗口与视口
- MFC中的OpenGL窗口
- opengl 与窗口系统
- 学习笔记2--与OpenGL窗口中的立方体进行简单的交互
- 用 OpenGL 函数实现二维观察的窗口与视区的映射变换,修改视口定义函数,熟悉窗口与视区的概念
- 窗口与视口
- OpenGL中的VAO与VBO
- OpenGL中的坐标系与矩阵
- OpenGL中的光照与材料
- OpenGL中的VAO与VBO
- 转//视口与窗口
- iOS中的窗口与视图
- 《高效学习OpenGL》之清除窗口 glClearColor()与glClear()
- Windows MFC 两个OpenGL窗口显示与线程RC问题
- MFC与openGL结合拖放窗口,视图闪烁问题解决
- OpenGL: OpenGL中的平面圆绘制与贴图
- 关于Win32 GDI映射模式中的视口与窗口的理解
- Qt OpenGL----创建openGL窗口
- QCon2016演讲《Rust语言的核心竞争力》总结和补充
- Spring Cache抽象详解
- 设计模式:Adapater模式
- c++-zuoye4
- 大二上益米实习总结
- OpenGL中的窗口与视口
- Cookie的作用域
- C++实验4-乘法口诀表
- http://demo.netfoucs.com大量盗取CSDN博客文章,抹去作者版权信息
- 暑期实习面经
- SDAU 练习三 1013 小牛生孩子问题
- 面试题4
- C++ primer读书笔记 第十章 关联容器
- Generate Parentheses