位置: 编程技术 - 正文

4.3 投影变换(投影变换的使用方法)

编辑:rootadmin

推荐整理分享4.3 投影变换(投影变换的使用方法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:投影变换的三种方法,投影变换包括哪几种投影方式,投影变换原理,投影变换是什么,投影变换是什么,投影变换的使用方法,投影的变换,投影变换的使用方法,内容如对您有帮助,希望把文章链接给更多的朋友!

投影变换的目的就是定义一个视景体,使得视景体外多余的部分裁剪掉,最终图像只是视景体内的有关部分。

投影也是使用矩阵来实现的。计算一个用于实现透视投影或者平行投影的矩阵,并把它与当前的投影矩阵(一般是单位矩阵)相乘。

OpenGL支持两种类型的投影变换,即透视投影和正投影。

一、透视投影 透视投影符合人们心理习惯,即离视点近的物体大,离视点远的物体小,远到极点即为消失,成为灭点。

它的视景体类似于一个顶部和底部都被切除掉的棱椎,也就是棱台。

这个投影通常用于动画、视觉仿真以及其它许多具有真实性反映的方面。

此种情况下,需要用gluLookAt设定照相机位置、照相机方向(一般设置为(0,1,0))、以及视点位置。

1. void glFrustum(GLdouble left, GLdouble Right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble far);

eft,right指明相对于垂直平面的左右坐标位置 bottom,top指明相对于水平剪切面的下上位置 nearVal,farVal指明相对于深度剪切面的远近的距离,两个必须为正数

4.3 投影变换(投影变换的使用方法)

2. void gluPerspective(GLdouble fovy,GLdouble aspect,GLdouble zNear, GLdouble zFar);

fovy指定视景体的视野的角度,以度数为单位,y轴的上下方向。范围是[0.0, .0]。 aspect指定你的视景体的宽高比(x 平面上) zNear指定观察者到视景体的最近的裁剪面的距离(必须为正数) zFar与上面的参数相反,这个指定观察者到视景体的最远的裁剪面的距离(必须为正数)

二、平行投影 正射投影,又叫平行投影。这种投影的视景体是一个矩形的平行管道,也就是一个长方体,正射投影的最大一个特点是无论物体距离相机多远,投影后的物体大小尺寸不变。

它适用于2D图形,如文本、建筑绘图等。在它的应用场合,我们希望在屏幕上展示准确的物体大小和度量。

此种模式下,不需要设定照相机位置、方向以及视点的位置,也就是说不需要gluLookAt函数。

1. glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble far)

其中近裁剪平面是一个矩形,矩形左下角点三维空间坐标是(left,bottom,-near),右上角点是(right,top,-near);远裁剪平面也是一个矩形,左下角点空间坐标是(left,bottom,-far),右上角点是(right,top,-far)。 所有的near和far值同时为正或同时为负, 值不能相同。如果没有其他变换,正射投影的方向平行于Z轴,且视点朝向Z负轴。这意味着物体在视点前面时far和near都为负值,物体在视点后面时far和near都为正值。 只有在视景体里的物体才能显示出来。

2. void gluOrtho2D(GLdouble left,GLdouble right,GLdouble bottom,GLdouble top)

它是一个特殊的正射投影函数,主要用于二维图像到二维屏幕上的投影。它的near和far缺省值分别为-1.0和1.0,所有二维物体的Z坐标都为0.0。因此它的裁剪面是一个左下角点为(left,bottom)、右上角点为(right,top)的矩形。

shader之旅-7-平面阴影(planar shadow) 根据《real-timeshadow》这本书第二章中的推导,实现了最简单的阴影技术。planarshadow通过一个投影矩阵将被灯光照射的物体的顶点沿着光线方向投影到接

OpenGL三角形的双面不同颜色的绘制 对于一个三角形,我要给它正反面不同的颜色。然后通过旋转,看出它的效果。我只想到了2种方法,下面我来写一下这两种方法。第一种方法,通过角

5.2光源 在OpenGL中,仅仅支持有限数量的光源。使用GL_LIGHT0表示第0号光源,GL_LIGHT1表示第1号光源,依次类推.OpenGL至少会支持8个光源,即GL_LIGHT0到GL_LIGHT7。使用g

标签: 投影变换的使用方法

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

上一篇:OpenGL 矩阵变换(讲的太好了~!)(opengl 旋转矩阵)

下一篇:shader之旅-7-平面阴影(planar shadow)(shader cull)

  • 留抵抵欠条件
  • 存货被盗的会计分录
  • 一般纳税人增值税申报操作流程
  • 可以不用附原始凭证的记账凭证是
  • 开发间接费属于期间费用吗
  • 视同销售要确认收入吗?
  • 内部资金往来科目
  • 退休工资的个人账户怎么算
  • 个人承包业务是否合法
  • 保险收入如何做账务处理?
  • 小规模购买金税盘可以全额抵扣吗
  • 安装预算收入
  • 健身行业的税务政策
  • 收到普通发票税号错了不改会怎么样
  • 个人所得税特殊计税方法
  • 购买基金会计核算
  • 当月扣缴社保需要申报吗
  • iphone有没有
  • 购买货车预付保险怎么算
  • 甲方代付农民工工资合同
  • 溢价发行股票的相关交易费用冲减资本公积
  • 教你如何在白桦树上采集桦树汁
  • mom.exe是什么进程
  • 获取当前位置被拒怎么办
  • PHP:session_set_save_handler()的用法_Session函数
  • 真三国在哪下载
  • php 随机数
  • 零息债券利息
  • 先买入再卖出
  • thinkphp获取get传值
  • php @method
  • iterator用法 移除对象
  • php100 jquery教程
  • 缴纳残保金会计分录最新
  • 在建工程完工后转入哪里
  • 文明手语动作
  • 公司有收入可不交社保吗
  • 收到汇算清缴的退税需要交税吗
  • 货代一般一个柜利润多少
  • 长期股权投资减值准备是什么科目
  • 有限公司分公司属于什么类型
  • 还原型谷胱甘肽的作用和功效
  • 个人所得税的征收模式为()A分类征收B
  • 进口环节缴纳关税计入什么科目
  • 房地产企业成本包括哪些
  • 商场进行打折促销活动,消费金额(p)
  • 简易征收的纳税标准
  • 营改增后建筑企业税负
  • 无法支付的应付账款摘要怎么写
  • 小规模纳税人收入是含税还是不含税
  • 建账及账务处理步骤
  • 吸收的三种方式
  • mysql进阶之路
  • yum源如何配置
  • win8系统出现蓝屏怎样处理
  • win7某个软件打不开
  • linux查看mtime的命令
  • 在Linux系统中安装MySQL
  • 全面了解自我,接纳和包容自我
  • 实现原生的ajax
  • bootstrap怎么学
  • python伪装请求头
  • python中get怎么用
  • div遮罩层整个页面
  • spring中aop实现
  • python 进阶
  • 数据结构分析时间复杂度
  • nodejs+ts
  • python获取当前日期的前一天
  • 安卓自定义app
  • Dojo Javascript 编程规范 规范自己的JavaScript书写
  • python中函数参数类型
  • 滴滴收入统计
  • 税务数字证书密码修改失败
  • 增值税运输费用税额计算
  • 个人所得税自行纳税申报表a表填写模板
  • 完税证明可以自己在官网打印吗
  • 不能抵扣消费税口诀
  • 实地税务稽查需注意什么
  • 济南车辆购置税完税证明电子版
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设