【学习笔记】计算机图形学的几何数学基础知识
3D坐标系
左手系和右手系
点
x,y,z与w(齐次坐标)
矩阵
- 第一个下标表示行号,第二个下标表示列号。
- 矩阵乘法不满足交换律
- 矩阵乘法=矩阵合并
- 一个矩阵乘以它的逆矩阵=单位矩阵
变化矩阵
平移矩阵
缩放矩阵
除了可以缩放,
还可以利用缩放,在给定右手系的情况确定左手系,相互转换
旋转矩阵
3D空间中旋转物体,需要指定旋转轴和旋转角
向量
向量的加减法
归一化
点积的应用
- 求两个向量的夹角 (单位向量点积)
- 是否正交
- 是否同向
- 是否平行相反
- 是否在夹角范围内
- 向量大小
- 点到平面的距离
叉积的应用
生成一个正交于两个向量的向量
遵循右手定则
局部空间与世界空间
局部空间 local space:物体的坐标系,又名模型空间 model space 物体空间 object space
在世界空间中为对象定位及定向的矩阵称为模型矩阵,通常记为 M
视觉空间和合成相机
已知OpenGl相机的位置永远是原点,相机的方向永远是z轴负方向,相机的上方永远是y轴正方向。
那么想要将物体放到相机前方,需要将物体的坐标系转换到相机坐标系即可。
我们根据虚拟/期望的相机位置/欧拉角,来计算视图变换矩阵,将物体从世界坐标转换到相机坐标系。
将平移和旋转矩阵(相机从原点移动到期望位置)合并得到的矩阵称为视图变换矩阵(viewing transform),记作 V。
视图变换矩阵
模型-视图(Model-View,MV)矩阵:模型空间直接转换至相机空间(把M模型矩阵和V视图变换矩阵合并了)
投影矩阵
透视投影矩阵
参数:纵横比、视场、近剪裁平面(也称投影平面)、远剪裁平面
视场 Field Of View, FOV:是可视空间的纵向角度
横纵比 aspect ratio:远近剪裁平面的宽度与高度之比
正交投影矩阵
参数:
(a)从相机到投影平面的距离 znear;
(b)从相机到远剪裁平面的距离 zfar;
(c)L、R、T 和 B 的值,其中 L 和 R 分别是投影平面左、右边界的 x 坐标,T 和 B 分别是投影、平面上、下边界的 y 坐标。
LookAt矩阵
当你想要把相机放在某处并看向一个特定的位置时,就需要用到它。
参数
- 叉积计算
- fwd相机正面
- side相机侧面
- up相机上面
- 相机位置
- 目标位置
构建矩阵变换的GLSL函数
GLSL
相关文章:

【学习笔记】计算机图形学的几何数学基础知识
3D坐标系 左手系和右手系 点 x,y,z与w(齐次坐标) 矩阵 第一个下标表示行号,第二个下标表示列号。矩阵乘法不满足交换律矩阵乘法=矩阵合并一个矩阵乘以它的逆矩阵=单位矩阵变化矩阵 平移矩阵 缩放矩阵 除了可以缩放, 还可以利用缩放,在给定右手系的情况确定左手系…...
Python因为网络原因安装依赖库报错
现象 在终端运行以下指令 pip install pyautogui pillow keyboard 出现报错,终端信息如下: PS D:\code\Python> pip install pyautogui pillow keyboard Collecting pyautoguiUsing cached PyAutoGUI-0.9.54.tar.gz (61 kB)Installing build depe…...

什么是卸荷器?风力发电为什么要用卸荷器
目前市场上,那些功率低于400W的小型风力发电机,普遍缺乏刹车、稳速或限速机制。只要有足够的风力,发电机便会开始转动并产生电力。风力越强,转速就越快,这可能导致发电机因转速过高而损坏,甚至发生风机头飞…...

SQL Server详细使用教程(包含启动SQL server服务、建立数据库、建表的详细操作) 非常适合初学者
SQL Server详细使用教程(包含启动SQL server服务、建立数据库、建表的详细操作) 非常适合初学者 文章目录 目录 前言 一、启动SQL server服务的三种方法 1.不启动SQL server服务的影响 2.方法一:利用cmd启动SQL server服务 3.方法二:利用SQL Serv…...

大数据学习之Spark分布式计算框架RDD、内核进阶
一.RDD 28.RDD_为什么需要RDD 29.RDD_定义 30.RDD_五大特性总述 31.RDD_五大特性1 32.RDD_五大特性2 33.RDD_五大特性3 34.RDD_五大特性4 35.RDD_五大特性5 36.RDD_五大特性总结 37.RDD_创建概述 38.RDD_并行化创建 演示代码: // 获取当前 RDD 的分区数 Since ( …...

Unity 加载OSGB(webgl直接加载,无需转换格式!)
Unity webgl加载倾斜摄影数据 前言效果图后续不足 前言 Unity加载倾斜摄影数据,有很多的插件方便好用,但是发布到网页端均失败,因为webgl 的限制,IO读取失效。 前不久发现一个开源项目: UnityOSGB-main 通过两种方式在 Unity 中…...
tcp/ip网络协议,tcp/ip网络协议栈
TCP/IP网络协议和TCP/IP网络协议栈是互联网通信的基石,它们定义了电子设备如何连入因特网以及数据如何在它们之间传输的标准。以下是对TCP/IP网络协议和TCP/IP网络协议栈的详细解释: 一、TCP/IP网络协议 TCP/IP(Transmission Control Proto…...
【Debug】the remote host closed the connection错误信息分析
出现的情况说明:QT软件。刚开始都可以连接成功 之后连接 断开几次 就会出现连接失败 错误信息是the remote host closed the connection。the remote host closed the connection广泛原因分析 这个错误通常意味着远端 STM32 服务器主动关闭了连接。可能的原因包括&a…...

SpringBoot扩展篇:@Scope和@Lazy源码解析
SpringBoot扩展篇:Scope和Lazy源码解析 1. 研究主题及Demo2. 注册BeanDefinition3. 初始化属性3.1 解决依赖注入3.2 创建代理 ContextAnnotationAutowireCandidateResolver#getLazyResolutionProxyIfNecessary3.3 代理拦截处理3.4 单例bean与原型bean创建的区别 4. …...

“AI隐患识别系统,安全多了道“智能护盾”
家人们,在生活和工作里,咱们都知道安全那可是头等大事。不管是走在马路上,还是在工厂车间忙碌,又或是住在高楼大厦里,身边都可能藏着一些安全隐患。以前,发现这些隐患大多靠咱们的眼睛和经验,可…...

通向AGI之路:人工通用智能的技术演进与人类未来
文章目录 引言:当机器开始思考一、AGI的本质定义与技术演进1.1 从专用到通用:智能形态的范式转移1.2 AGI发展路线图二、突破AGI的五大技术路径2.1 神经符号整合(Neuro-Symbolic AI)2.2 世界模型架构(World Models)2.3 具身认知理论(Embodied Cognition)三、AGI安全:价…...

论文阅读:InstanceDiffusion: Instance-level Control for Image Generation
CVPR2024文章 摘要: 文本到图像扩散模型产生高质量的图像,但不提供对图像中单个实例的控制。我们引入了InstanceDiffusion,它将精确的实例级控制添加到文本到图像扩散模型中。InstanceDiffusion 支持每个实例的自由形式的语言条件ÿ…...

7.攻防世界 wzsc_文件上传
打开题目页面如下 上传了一张带有木马的图片 返回的页面是空白的,不过路径变了 猜测存在根目录/upload 也可以通过dirsearch扫描根目录 命令: dirsearch -u http://61.147.171.105:65024/ -e* 终于得到了上传的文件的信息 但是测试发现.php文件以及.…...

以为是响应式对象丢失导致数据没有回显
背景:之前ruoyi生成的vue2代码, <el-form ref“form”,后面我改成vue3的写法,没有实例化form, 在vue3中是需要定义const form ref(); 导致点击了修改后,页面弹框显示出来,数据没有回显。 一直…...

来 Gitcode 免费体验 DeepSeek 蒸馏模型,开启 AI 探索新旅程
在 AI 技术飞速发展的时代,你是否也怀揣着对前沿科技的无限好奇与探索欲望?然而,昂贵的模型体验费用和复杂的操作流程,是不是让你一次次望而却步?现在,这些都不再是问题!DeepSeek 蒸馏模型现已强…...

2.Mkdocs配置说明(mkdocs.yml)【最新版】
官方文件:Changing the colors - Material for MkDocs 建议详细学习一下上面的官方网站↑↑↑ 我把我目前的配置文件mkdocs.yml代码写在下面👇🏻 #[Info] site_name: Mkdocs教程 #your site name 显示在左上角 site_url: http://wcowin.wo…...

云轴科技ZStack+海光DCU:率先推出DeepSeek私有化部署方案
针对日益强劲的AI推理需求和企业级AI应用私有化部署场景(Private AI),云轴科技ZStack联合海光信息,共同推动ZStack智塔全面支持DeepSeek V3/R1/Janus Pro系列模型,基于海光DCU实现高性能适配,为企业提供安全…...

扩增子分析|零模型2——基于βNTI的微生物随机性和确定性装配过程(箱线图和柱状图R中实现)
一、引言 我们之前发布的周集中老师团队零模型R中实战案例:扩增子分析|基于零模型的群落确定性和随机性构建过程——R实战_bmntd-CSDN博客。在文末只输出了一个.csv 表格。并没有提供绘图的方法,有小伙伴问如何在R中一键成图呢?还真可以&…...
专题:剑指offer
链表 JZ6 从尾到头打印链表 思路:先顺序输出到栈里面 然后再以此从栈顶弹出即可 /** * struct ListNode { * int val; * struct ListNode *next; * ListNode(int x) : * val(x), next(NULL) { * } * }; */ #include …...

DeepSeek 部署过程中的问题
文章目录 DeepSeek 部署过程中的问题一、部署扩展:docker 部署 DS1.1 部署1.2 可视化 二、问题三、GPU 设置3.1 ollama GPU 的支持情况3.2 更新 GPU 驱动3.3 安装 cuda3.4 下载 cuDNN3.5 配置环境变量 四、测试 DeepSeek 部署过程中的问题 Windows 中 利用 ollama 来…...
数据链路层的主要功能是什么
数据链路层(OSI模型第2层)的核心功能是在相邻网络节点(如交换机、主机)间提供可靠的数据帧传输服务,主要职责包括: 🔑 核心功能详解: 帧封装与解封装 封装: 将网络层下发…...

SpringCloudGateway 自定义局部过滤器
场景: 将所有请求转化为同一路径请求(方便穿网配置)在请求头内标识原来路径,然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...
Element Plus 表单(el-form)中关于正整数输入的校验规则
目录 1 单个正整数输入1.1 模板1.2 校验规则 2 两个正整数输入(联动)2.1 模板2.2 校验规则2.3 CSS 1 单个正整数输入 1.1 模板 <el-formref"formRef":model"formData":rules"formRules"label-width"150px"…...

Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found", "n…...

Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...

【从零开始学习JVM | 第四篇】类加载器和双亲委派机制(高频面试题)
前言: 双亲委派机制对于面试这块来说非常重要,在实际开发中也是经常遇见需要打破双亲委派的需求,今天我们一起来探索一下什么是双亲委派机制,在此之前我们先介绍一下类的加载器。 目录 编辑 前言: 类加载器 1. …...

Proxmox Mail Gateway安装指南:从零开始配置高效邮件过滤系统
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「storms…...

Golang——7、包与接口详解
包与接口详解 1、Golang包详解1.1、Golang中包的定义和介绍1.2、Golang包管理工具go mod1.3、Golang中自定义包1.4、Golang中使用第三包1.5、init函数 2、接口详解2.1、接口的定义2.2、空接口2.3、类型断言2.4、结构体值接收者和指针接收者实现接口的区别2.5、一个结构体实现多…...
uniapp 集成腾讯云 IM 富媒体消息(地理位置/文件)
UniApp 集成腾讯云 IM 富媒体消息全攻略(地理位置/文件) 一、功能实现原理 腾讯云 IM 通过 消息扩展机制 支持富媒体类型,核心实现方式: 标准消息类型:直接使用 SDK 内置类型(文件、图片等)自…...