【计算机图形学入门】笔记4:变换(模型、视图、投影)

news2024/12/23 10:40:11

目录

  • 04变换(模型、视图、投影)
    • 1.使用齐次坐标表示的三维变换
    • 2.view/Camera 视图变换
    • 3.Projection 投影变换
      • 1.Orthographic projection 正交投影
      • 2.Perspective projection 透视投影 ——更适合人眼成像(近大远小,鸽子为什么这么大)
      • 正交投影:先把相机放在原点,然后把向上设为y,再把z坐标扔掉
      • 透视投影

04变换(模型、视图、投影)

1.补充知识:旋转的逆=旋转矩阵的转置(正交矩阵)

请添加图片描述

如果我们相求一个旋转的逆,就是往相反的方向旋转相反的角度,我们只需要写一个正向的旋转,然后把这个矩阵转置过来。这自然就是它的逆。

1.使用齐次坐标表示的三维变换

1.缩放和平移

请添加图片描述

2.绕轴旋转

请添加图片描述

3.旋转公式

请添加图片描述

2.view/Camera 视图变换

1.思考:如何得到一张照片?

请添加图片描述

MVP变换:模型,视图,投影变换

2.把相机的位置固定,相机永远在原点,相机永远朝向-z方向看

请添加图片描述

3.把相机从任意的摆放给放到标准摆放上如何操作?

先把e移动到原点,再旋转g到-z,t到y,最后自然能求出x方向

请添加图片描述

4.那么如何把这个操作写成矩阵形式?

移动到原点的平移操作,也就是先平移再旋转请添加图片描述

请添加图片描述

旋转操作:我们将某个数旋转到已知向量不好写,但从已只向量旋转到某个数可以写出来,再求出结果的逆即可。

请添加图片描述

3.Projection 投影变换

1.Orthographic projection 正交投影

2.Perspective projection 透视投影 ——更适合人眼成像(近大远小,鸽子为什么这么大)

请添加图片描述

深度显示区别

请添加图片描述

正交投影:先把相机放在原点,然后把向上设为y,再把z坐标扔掉

请添加图片描述

正则/规范立方体,f是远,n是近

把任何一个立方体变成规范立方体

请添加图片描述

先平移再缩放,其中缩放结果为-1+1=2。也就是r-l*2/r-l

请添加图片描述

透视投影

请添加图片描述

请添加图片描述

进平面n,远平面f,中心点都不会变

任意一个点y会被如何挤压?

请添加图片描述

请添加图片描述

请添加图片描述

对于任何一个点,近平面n不会发生改变

请添加图片描述

请添加图片描述

对任意一个点,远平面不会发生变化。例如中心点 0,0,f

请添加图片描述

请添加图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/77562.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AlphaControls 读取存贮数据VCL OnChange事件的处理

AlphaControls 读取存贮数据VCL OnChange事件的处理 AlphaControls控件,窗口时显示,对于VCL控件的处理,需要通过调用皮肤模板重新画出来。因此,在窗口的显示过程中,对VCL控件的数据装载(变更&#x…

从获评毕马威中国领先地产科技50强 看贝壳的长期主义

11月9日,在上海进博会现场,毕马威发布了2022年度(第二届)“毕马威中国领先地产科技企业50”报告,并正式发布了年度毕马威中国领先地产科技企业50榜及地产科技新锐企业榜。作为国内居住产业数字服务平台的贝壳上榜。 众…

前辈给的 Spring Cloud 与 Docker 微服务实战,挽救了要被辞退的我

前言 还记得那天天气阴冷,整个人心都是拔凉拔凉的;原因是因为领导找我聊了一下,委婉地说觉得我的技术不太行,能力不突出;要么自己做出改变,要么选择离开。 说实话,我是有点难过的,…

Lambda完整学习指南

什么是Lambda表达式 Lambda表达式是Java SE 8中一个重要的新特性。lambda表达式允许你通过表达式来代替功能接口。lambda表达式就和方法一样,它提供了一个正常的参数列表和一个使用这些参数的主体(body,可以是一个表达式或一个代码块)。Lambda表达式还增强了集合库。 Java La…

大学生HTML作业篮球网页 HTML作业篮球网页期末作业 HTML+CSS篮球网页 HTML学生作业体育篮球网页

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

ARS系列毫米波雷达技术一览

近年来,自动驾驶成为了当下最热门的话题。随着自动驾驶技术的发展,作为其关键传感器之一的毫米波雷达,也得到了广泛关注。但就目前来看,海外巨头公司主导着全球毫米波雷达产业的发展,其中,大陆ARS540更以九…

吊打面试官,聊聊:Java中String对象的大小?(史上最全)

下面是一个常见的Java 面试题: 聊聊:Java中String对象的大小? 首先,看看空String占用的空间 当前内存大小是在默认开启压缩指针的条件下 对象头 12char[]数组引用 4int 类型 hash数据大小 4loss due to the next object alignm…

MacOS好用的系统清理工具CleanMyMac有哪些特点功能?

怎么样为Mac选择一款专业靠谱的清理工具?需要满足那些功能呢?对于大多数的新手用户可能并不知道如何来清理Mac系统,当然也不知道在众多清理工具中如何选择。选择一款清理工具最重要的是它的性能如何,能不能有效的帮助用户清理系统…

[附源码]JAVA毕业设计小说阅读网站(系统+LW)

[附源码]JAVA毕业设计小说阅读网站(系统LW) 项目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术&…

听说你还不了解二叉树?赶紧进来轻松解决

✨个人主页: Yohifo 🎉所属专栏: 数据结构 | C语言 🎊每篇一句: 图片来源 Only by self-respect will you compel others to respect you. 只有自尊才能迫使他人尊敬你。 文章目录📘前言📘正文…

java的vo实体类字段和返回前端接收的字段大小写不一致

java的vo实体类字段和返回前端接收的字段不一致 后台的vo字段和前端接收到的出现大小写一直的情况 例如: 后台字段 /** a_lwa */private String aLwa;前端实际接收到的 这是由于使用lombok插件导致的 解决办法 实体类添加注解强制绑定 /** a_lwa */JsonProperty("aLwa&…

【JavaWeb开发-Servlet】day07-学生成绩管理系统-实现登录注册功能

目录 一、登录功能 1、实现登录页面 ①新建一张登录表:login ②插入一条测试数据 ③新建一个login.jsp登录界面 ④此表的实体Teacher类: ⑤ 然后在写一个dao方法,需要根据用户名查询登录表中的用户信息 ⑥业务层中我们直接调用dao层方法 ⑦在…

【负荷预测】基于灰色理论负荷预测的应用研究(Matlab代码实现)

👨‍🎓个人主页:研学社的博客 💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜…

南京邮电大学编译原理实验一(词法分析器的构造)

文章目录一、 实验目的和要求二、实验环境(实验设备)三、实验原理及内容(一)设计概要1、C语言子集2、单词及编码3、状态转换图(二)实现分析(三)结果分析四、实验小结(包括问题和解决方法、心得体…

文本纠错--N-gram--Macbert模型的调用以及对返回结果的处理

文本根据词典进行纠错 输入一段可能带有错误信息的文字, 通过词典来检测其中可能错误的词。 例如:有句子如下:中央人民政府驻澳门特别行政区联络办公室1日在机关大楼设灵堂    有词典如下:中国人民,中央人民&#x…

红帽曹衡康:开源是企业数字化转型的机遇

在数据成为企业核心资产的今天,为了更好地降本增效,实现业务创新和增长,越来越多的企业都开启了数字化转型之路。然而对于绝大多数企业来说,这条转型之路都并非一帆风顺。事实上,数字化转型在为企业开启更多机遇的同时…

爆火Chatgpt注册 chatgpt使用 完全指南

1 chatgpt 简介 ChatGPT是一种语言模型,它被训练来对对话进行建模。它能够通过学习和理解人类语言来进行对话,并能够生成适当的响应。ChatGPT使用了一种叫做Transformer的神经网络架构,这是一种用于处理序列数据的模型,能够在输入…

Java System类

JavaSystem类\huge{Java \space System类}Java System类 System类概述 简而言之:SystemSystemSystem类就是一个工具类,直接调用对应的方法来使用即可,不需要也不能被实例化。 常用方法 ①. exit() 退出Java虚拟机 //执行这个exit(0)代码之…

[附源码]计算机毕业设计的花店售卖系统的设计与实现Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

GPU——占用情况和进程情况的参数解读表

GPU——占用情况和进程情况的参数解读表一、GPU占用情况二、GPU的进程情况参考资料一、GPU占用情况 名称功能说明Fan风扇转速在0 (%) 到100 (%) 之间变动Temp摄氏温度CPerf性能状态从P0到P12,P0表示最大性能,P12表示状态最小性能Persistence-M持续模式的…