认识3D旋转变换矩阵

news2024/9/23 9:37:17

前文输出了cesium的Rotation变量,一个矩阵;把这矩阵写下来看下;

0.99939     -0.034899    0    0
0.034899    0.99939      0    0
   0           0         1    0
   0           0         0    1

看一下3D数学的相关描述;

方位和角位移

    不能用绝对坐标来描述物体的 位置 ,要描述物体的 位置 ,必须把物体放置于特定的参考系中。

描述 位置 实际上就是描述相对于给定参考点(通常是坐标系的原点)的 位移 。
    描述物体 方位 时,也不能使用绝对量。
与位置只是相对已知点的位移一样,方位是通过于相对已知方位(通常称为“单位”方位或“源”方位)的旋转来描述的。

旋转的量称作角位移。

    在数学上描述 方位 就等价与描述 角位移 。

    

方位:

表示的是一种静态的状态;
当用矩阵表示方位时,此时矩阵表示的是一个“点”,而该点的坐标就是原点进行矩阵表示的旋转之后所在的地方。即描述 方位 实际上就是描述相对于给定参考点(通常是坐标系的原点)的 角位移 。

角位移:

表示的是一种动态的过程;
当用矩阵表示角位移时,旋转变换的量即是角位移。
具体来说,我们用矩阵和四元数来表示“角位移”,用欧拉角来表示“方位”。


矩阵形式--用矩阵描述旋转变换
3D 中,描述坐标系中 方位 的一种方法就是列出这个坐标系的 基向量 ,而这些基向量是相对于其他坐标系进行描述的。
这些基向量构成一个 3 × 3 矩阵,然后就能用矩阵形式来描述 方位 。

换言之,能用一个 旋转矩阵 来描述这两个坐标系之间的相对方位,这个旋转矩阵用于把一个坐标系中的向量转换到另一个坐标系中。

看了一下,如下图;有三种情况的旋转矩阵,分别是绕不同的轴旋转,其需要的矩阵不一样;

 


上面的矩阵应该是绕Z轴旋转;只是多了最后一行最后一列;如果去除最后一行一列就是如下;


0.99939     -0.034899    0
0.034899    0.99939      0
   0           0         1

    这就和前面绕Z轴旋转的矩阵一样;

因为最后一行一列是 0 0 0 1;乘上去是不是一样;

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

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

相关文章

周赛335(模拟、质因子分解、分组背包)

题解:0x3f https://leetcode.cn/problems/number-of-ways-to-earn-points/solution/fen-zu-bei-bao-pythonjavacgo-by-endlessc-ludl/ 文章目录周赛335[6307. 递枕头](https://leetcode.cn/problems/pass-the-pillow/)模拟[6308. 二叉树中的第 K 大层和](https://le…

扬帆优配|本周限售股解禁规模不足300亿元,这8家公司解禁压力大

本周限售股解禁规模环比大降至300亿元之下。 Wind数据显示,除掉新上市公司,本周A股商场共有36家公司限售股解禁,解禁数量27.69亿股,以最新收盘价核算(下同),解禁市值268.81亿元。 解禁市值超越…

【第二章 @RequestMapping注解(value,method,params属性),springMVC支持ant风格的路径,支持路径中的占位符】

第二章 RequestMapping注解(value,method,params属性),springMVC支持ant风格的路径,支持路径中的占位符 1. RequestMapping注解: (1) RequestMapping注解的作用就是将请…

数据结构与算法之桶排序

目录桶排序概念代码实现时间复杂度桶排序概念 桶排序 (Bucket sort)或所谓的箱排序,是一个排序算法,工作的原理是将数组分到有限数量的桶里。每个桶再个别排序(有可能再使用别的排序算法或是以递归方式继续使用桶排序…

如何根据实际需求选择合适的三维实景建模方式?

随着实景三维中国建设的推进,对三维实景建模的数字化需求大幅增加。由于三维实景建模具有采集速度快、计算精度高等建模优势,引起了各个行业的高度关注。三维实景建模是一种应用数码相机或者激光扫描仪对现有场景进行多角度环视拍摄,然后利用…

进制转换(详解二进制、八进制、十进制、十六进制的相互转换)

目录二进制运算规则十进制的转换二进制数、八进制数、十六进制数的相互转换👘什么是数制 用进位的原则进行计数称为进位计数制,简称数制。进位计数制的特点是表示数值大小的数码与它所处的位置有关,每种数制都包含两个基本的要素:…

WPF WrapPanel、UniformGrid、DockPanel介绍

WPF WrapPanel、UniformGrid、DockPanel介绍 WrapPanel WrapPanel , 具有在有限的容器范围内, 可以自动换行, 或者换列处理。具体则取决于WrapPanel的排列方式 (Orientation)。 Orientation"Horizontal"时各控件从左至右罗列,当面板长度不够时&#xff…

JMM JVM 垃圾回收

目录 一、JMM内存模型 1、定义 2、JMM的三大特性(可见性原子性有序性) 2.1 可见性 2.2 原子性 2.3 有序性 3、JMM中的8种原子操作 二、JVM 1、JVM体系结构 2、JVM参数调优 2.1 三大参数类型 2.2 九个调优参数 三、垃圾回收器 1、4种GC算法(引用计数 /复制拷贝/标…

深度学习pytorch实战三:VGG16图像分类篇自建数据集图像分类三类

1.自建数据集与划分训练集与测试集 2.模型相关知识 3.model.py——定义AlexNet网络模型 4.train.py——加载数据集并训练,训练集计算损失值loss,测试集计算accuracy,保存训练好的网络参数 5.predict.py——利用训练好的网络参数后&#xff0c…

【Taro开发】-文字展开收起组件(十五)

Taro小程序开发 系列文章的所有文章的目录 【Taro开发】-初始化项目(一) 【Taro开发】-路由传参及页面事件调用(二) 【Taro开发】-taro-ui(三) 【Taro开发】-带token网络请求封装(四&#x…

Sonar:Win10搭建SonarQube9.8服务

需求描述 公司为项目代码配置了Sonar检测,最初只是想调研在VSCode中同步远程检测的方法(现在请参考Sonar:VSCode配置SonarLint/SonarLint连接SonarQube);结果并没有找到靠谱的教程。。在度娘的信息海洋胡乱扑腾两天后…

Docker(七)--Docker数据卷管理及插件

文章目录一、Docker 数据卷管理1.bind mount2.docker managed volume3.bind mount与docker managed volume对比二、跨节点存储convoy卷插件一、Docker 数据卷管理 在实际使用过程中,我们需要把容器和数据进行隔离,因为容器在使用过程中可能随时要进行销…

C++:set和map(模拟实现)

目录 关联式容器 键值对 树形结构的关联式容器 set的介绍 set的使用 map的介绍 map的使用 multiset的介绍 multimap的介绍 底层结构 AVL树的概念 AVL树节点的定义 AVL树的旋转 左单旋 右单旋 先右单旋再左单旋 先左单旋再右单旋 模拟实现AVL树 红黑树 红黑树…

【C++】30h速成C++从入门到精通(stack、queuepriority_queue以及deque介绍)

stackstack的介绍https://cplusplus.com/reference/stack/stack/?kwstackstack是一种容器适配器,专门在具有后进先出操作的上下文环境中,其删除只能从容器的一端进行元素的插入与提取操作。stack是作为容器适配器被实现的,容器适配器即是对特…

详解一致性哈希算法

在单机系统中,所有的数据都存储在同一个服务器下,当数据量越来越多的时候,超过了单机存储容量的上限,就需要使用分布式存储系统,在分布式存储系统重,数据会被拆分到不同的存储服务下,减少单机服…

[数据结构]:12-快速排序(顺序表指针实现形式)(C语言实现)

目录 前言 已完成内容 快速排序实现 01-开发环境 02-文件布局 03-代码 01-主函数 02-头文件 03-PSeqListFunction.cpp 04-SortCommon.cpp 05-SortFunction.cpp 结语 前言 此专栏包含408考研数据结构全部内容,除其中使用到C引用外,全为C语言代…

【Linux】canal1.1.7同步MySQL8.0.3和Redis

目录前言一、MySQL8配置1. 修改my.cnf2. 重启mysql3. 建用户、授权二、Canal服务端配置1. 下载2. 修改配置3. 启动服务与验证三、Canal客户端编写1. yml配置文件添加canal服务端配置信息和Redis信息2. 配置pom文件3. 代码4. MySQL建表storage.storage5. 启动客户端与验证参考前…

中微8S6990使用过程的一些记录--GPIO初始化、定时器、PWM、ADC、休眠等外设的配置和使用

前言 最近把一款产品的代码从新唐MS51移植到了中微8S6990平台上,记录下移植过程遇到的各种情况。 目录前言定时器初始化、中断服务函数GPIO配置ADC模数转换初始化PWM初始化Main函数休眠的一些注意事项最后定时器初始化、中断服务函数 void TMR0_Config(void) {/*(…

keepalived+nginx 双机热备搭建

keepalivednginx 双机热备搭建一、准备工作1.1 准备两台centos7.91.2 nginx 与 keepalived软件 双机安装1.3 ip分配1.4 修改主机名1.5 关闭selinux(双机执行)1.6 修改hosts(双机执行)二、安装keepalived2.1 执行一下命令安装keepa…

MidiaPipe +stgcn(时空图卷积网络)实现人体姿态判断(单目标)

文章目录前言Midiapipe关键点检测stgcn 姿态评估效果前言 冒个泡,年少无知吹完的牛皮是要还的呀。 那么这里的话要做的一个东西就是一个人体的姿态判断,比如一个人是坐着还是站着还是摔倒了,如果摔倒了我们要做什么操作,之类的。…