位置: 编程技术 - 正文

glViewport(glviewport超出屏幕范围)

编辑:rootadmin
glViewport是OpenGL中的一个函数。计算机图形学中,在屏幕上打开窗口的任务是由窗口系统,而不是OpenGL负责的。1功能编辑glViewport在默认情况下,视口被设置为占据打开窗口的整个像素矩形,如图1,窗口大小和设置视口大小相同,所以为了选择一个更小的绘图区域,就可以用glViewport函数来实现这一变换,在窗口中定义一个像素矩形,最终将图像映射到这个矩形中。例如可以对窗口区域进行划分,在同一个窗口中显示分割屏幕的效果,以显示多个视图。2参数编辑glViewport(GLint x,GLint y,GLsizei width,GLsizei height)为其函数原型。X,Y————以像素为单位,指定了视口的左下角(在第一象限内,以(0,0)为原点的)位置。width,height————表示这个视口矩形的宽度和高度,根据窗口的实时变化重绘窗口。

推荐整理分享glViewport(glviewport超出屏幕范围),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:glviewport函数,glviewport函数,glviewport函数,glviewport函数,glviewport的功能,glviewport函数,glviewport的功能,glviewport(0,0,w,h),内容如对您有帮助,希望把文章链接给更多的朋友!

下面是一个例子:

#include <gl/glut.h>

//不显示控制台窗口#pragma comment( linker, "/subsystem:"windows" /entry:"mainCRTStartup"")

void display(){//glMatrixMode( GL_MODELVIEW );//glLoadIdentity();

glClear( GL_COLOR_BUFFER_BIT );

glColor3f( 1.0, 0.0, 0.0 );//画分割线,分成四个视见区glViewport( 0, 0, , );glBegin( GL_LINES ); glVertex2f( -1.0, 0 ); glVertex2f( 1.0, 0 ); glVertex2f( 0.0, -1.0 ); glVertex2f( 0.0, 1.0 ); glEnd();

//定义在左下角的区域glColor3f( 0.0, 1.0, 0.0 );glViewport( 0, 0, , );glBegin( GL_POLYGON ); glVertex2f( -0.5, -0.5 ); glVertex2f( -0.5, 0.5 ); glVertex2f( 0.5, 0.5 ); glVertex2f( 0.5, -0.5 );glEnd();

//定义在右上角的区域glColor3f( 0.0, 0.0, 1.0 );glViewport( , , , );//一定要注意,后面这两个参数是高度和宽度,而不是坐标 glBegin( GL_POLYGON ); glVertex2f( -0.5, -0.5 ); glVertex2f( -0.5, 0.5 ); glVertex2f( 0.5, 0.5 ); glVertex2f( 0.5, -0.5 );glEnd();

//定义在左上角的区域glColor3f( 1.0, 0.0, 1.0 );glViewport( 0, , , );//一定要注意,后面这两个参数是高度和宽度,而不是坐标glBegin( GL_POLYGON );glVertex2f( -0.5, -0.5 );glVertex2f( -0.5, 0.5 );glVertex2f( 0.5, 0.5 );glVertex2f( 0.5, -0.5 );glEnd();

glViewport(glviewport超出屏幕范围)

//定义在右下角glColor3f( 1.0, 1.0, 0.0 );glViewport( , 0, , );//一定要注意,后面这两个参数是高度和宽度,而不是坐标glBegin( GL_POLYGON );glVertex2f( -0.5, -0.5 );glVertex2f( -0.5, 0.5 );glVertex2f( 0.5, 0.5 );glVertex2f( 0.5, -0.5 );glEnd();

glFlush();}

void init(){ glClearColor( 0.0, 0.0, 0.0, 0.0 );

glColor3f( 1.0, 1.0, 1.0 );

glMatrixMode( GL_PROJECTION );glLoadIdentity();//定义剪裁面gluOrtho2D( -1.0, 1.0, -1.0, 1.0 );

//glViewport( 0, 0, , ); //放在这里不好使}

int main( int argc, char ** argv ){ glutInit( &argc, argv );glutInitDisplayMode( GLUT_SINGLE | GLUT_RGB );glutInitWindowPosition( , );glutInitWindowSize( , );glutCreateWindow( "glViewport()" );glutDisplayFunc( display ); init();glutMainLoop();}

编译运行结果如下:

OpenGL 之 坐标变换 创建OpenGL模型过程:OPENGL坐标变换很有特点,为了简单描述先定义2个坐标系:(1)世界坐标系:无论如何变换,世界坐标系都不动,以屏幕中心为原点

OpenGL红宝书学习笔记(1) OpenGL对场景中的图像进行渲染时所执行的主要操作:1.根据几何图元创建形状,从而建立物体的数学描述,(OpenGL把点,直线,多边形和位图作为基本的

OpenGL学习之材质RGB值和光源RGB值关系 材质的颜色与光源的颜色有些不同。对于光源,R、G、B等于R、G、B对其最大强度的百分比。若光源颜色的R、G、B都是1.0,则是最强的白光;若变为0.5,

标签: glviewport超出屏幕范围

本文链接地址:https://www.jiuchutong.com/biancheng/373131.html 转载请保留说明!

上一篇:OpenGL 房子(opengl房子建模)

下一篇:OpenGL 之 坐标变换(opengl绘制坐标轴)

  • 个税免申报什么时候申报
  • 收到待报解预算收入怎么查退的什么税
  • 个人社保部分公司承担可以入费用吗
  • 预包装食品是否备案怎么查询
  • 固定资产原值错误的账务处理
  • 利润总额和净利润相同说明什么
  • 收到低值资产报废回收款账务处理
  • 已认证未付款分录
  • 企业留存收益包括盈余公积和未分配利润
  • 境外所得抵免税额是什么意思
  • 全年一次性奖金个税计算
  • 主营业务税金及附加大概比例
  • 矿产资源税是多少
  • 中标费用由哪方出
  • 股东和原始股的区别
  • 苹果电脑重装系统无法连接服务器
  • 其他债权投资通俗
  • 微信转账截图可以p图吗
  • 税金的分录
  • 资产购置融资
  • 购买财务软件申请怎么写
  • springboot+vue+elementsUI 实现分角色注册登录界面
  • PHP:mcrypt_list_algorithms()的用法_Mcrypt函数
  • 新西兰南岛西南部
  • 合伙企业的股息红利要交税吗
  • 食堂现金管理办法
  • 红字发票步骤
  • 增值税会自动申报吗
  • 微信小程序反编译2023
  • 一证通网上报税流程
  • uni-app实例教程
  • vue set up
  • php 短信验证码
  • 对附属单位补助的资金性质是财政预算资金
  • 新准则印花税计提会计分录
  • mongodb bi
  • 缴纳文化事业建设费
  • 个体户可以开多少免税发票
  • 电子口岸无纸化报关
  • sql2005备份数据库
  • 车船税不计入发票
  • 个人所得税劳务所得
  • 金税四期有什么变化
  • 已计提的城建税有误,怎么办
  • 月末结存材料的实际成本例题
  • 税金及附加需不需要计提
  • 酒店客房收入会计分录
  • 发票一般会失效几天
  • 代销产品如何做会计分录
  • 企业购进生产用品税率
  • 电子银行承兑汇票
  • 资本公积资本溢价怎么算
  • 商品促销赠品如何分类
  • 商业承兑背书后怎么办
  • 工会经费的列支范围有哪些
  • 会计的几种折旧类型
  • mysql数据库使用教程
  • 怎么做windows
  • redhat语言设置中文
  • 如何快速让你的钱变多
  • xp停在windows界面
  • ati2sgag.exe进程安全吗 ati2sgag进程信息查询
  • win7系统ie8浏览器
  • mac如何打开程序菜单
  • centos pptpd
  • linux gc
  • linux kinit
  • win10喇叭图标有x
  • linux文件目录管理命令
  • python的日志
  • node. js教程
  • css写文字
  • python怎么多进程
  • js时间范围
  • jquery下拉列表框
  • 税务管理职责
  • 青岛市市南区税务局第一税务所
  • 税务局组织收入存在的问题
  • 社保工资申报错了可以重新申请吗
  • 金税三期个人所得税怎么申报
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设