求三维坐标绕坐标轴旋转后的坐标值

目的

旋转矩阵

应用

沿单个坐标轴旋转

沿多个坐标系旋转


目的

由于其他文章原理介绍比较详细,但应用方面较少。本文直接介绍旋转矩阵的应用,条件为坐标系不变,求旋转后的三维坐标。本文方法较傻瓜式,需要自己进行测试以确认是否正确。

旋转矩阵

此处直接贴出网上很容易找到的公用的旋转矩阵:

绕X轴:

Rx(\alpha )=\begin{bmatrix} 1 & 0&0 \\ 0& cos\alpha & -sin\alpha \\ 0& sin\alpha &cos\alpha \end{bmatrix}

绕Y轴:

Ry(\beta )=\begin{bmatrix} cos\beta & 0&sin\beta \\ 0& 1& 0\\ -sin\beta &0 &cos\beta \end{bmatrix}

绕Z轴:

Rz(\gamma )=\begin{bmatrix} cos\gamma & -sin\gamma & 0\\ sin\gamma & cos\gamma &0 \\ 0& 0 & 1 \end{bmatrix}

应用

沿单个坐标轴旋转

沿A坐标轴旋转\delta°,则乘以其对应的旋转矩阵,是左乘还是右乘,可以手动测试一下。例如我的坐标系如下图,M为原坐标(1,0,0),现在绕y轴逆时针旋转至90°,即红色标记地方,所求的坐标M'应为(0,0,1),经测试,公式可以为:

M'=Ry(-90\div 180\ast \pi )\cdot M

M'=M\cdot Ry(90\div 180\ast \pi )

抛开其物理意义,可见左乘还是右乘,加上负号即可等价。至于原理如何可以查找其他博文,此处只介绍如何应用。如果你的坐标系与我的不同,但又不理解右手系,完全可以用这个方法进行试错测试。其他坐标系如法炮制。

沿多个坐标系旋转

按照旋转顺序,依次相乘即可得到最终的旋转矩阵,这里不再详述

R=Rx\cdot Ry\cdot Rz...

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

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

相关文章

HUAWEI(26)——防火墙双机热备

一、拓扑 二、需求 PC2 ping PC1 FW1与FW2双机热备,FW1为active,FW2为Standby,抢占延时1s VRRP 三、配置 1.IP地址,防火墙接口加入区域 防火墙用户名:admin 防火墙旧密码:Admin@123 防火墙新密码:admin@123 [FW1]interface GigabitEthernet 1/0/0 [FW1-GigabitEthe…

振弦传感器和无线振弦采集仪在隧道安全监测的解决方案

振弦传感器和无线振弦采集仪在隧道安全监测的解决方案 隧道作为交通工程的重要组成部分,具有极高的安全风险,因此隧道安全监测是必不可少的。振弦传感器和无线振弦采集仪作为隧道安全监测的两种重要设备,能够有效地监测隧道的振动情况&#…

elasticsearch(ES)分布式搜索引擎03——(RestClient查询文档,ES旅游案例实战)

目录 3.RestClient查询文档3.1.快速入门3.1.1.发起查询请求3.1.2.解析响应3.1.3.完整代码3.1.4.小结 3.2.match查询3.3.精确查询3.4.布尔查询3.5.排序、分页3.6.高亮3.6.1.高亮请求构建3.6.2.高亮结果解析 4.旅游案例4.1.酒店搜索和分页4.1.1.需求分析4.1.2.定义实体类4.1.3.定…

解决uniapp里scroll-view横向滚动的问题

一、前言 本以为是一件很简单的事,结果浪费了整整一个上午,并且问题并没有全部解决....后来没办法,用了touchmove模拟的滑动,如果有好的解决方法麻烦告诉我...非常感谢~ 一、问题 其实我想要实现的功能很简单,就是一…

微服务、SOA 和 API 之间的区别

在软件开发中,组织的投资方式发生了重大转变,部署了面向架构的方法。这一切都始于 SOA,然后转变为我们称之为微服务的东西。添加到其中的是另一个概念,指定为 API。 在过去的几年里,SOA 和微服务仍然是讨论的话题。随…

【红外双目有监督】CATS系列数据集探索加载器

论文: CATS: A Color and Thermal Stereo Benchmark https://www. flir.com/oem/adas/adas-dataset-form/.Flir thermal dataset 数据集规格 内容 总共 26,442 个 完全注释的帧,以及 15 个不同对象类别的520,000 个 边界框注释。 图片 9,711 张热图像和…

Lazysysadmin靶机

信息收集 主机发现 nmap -sn 192.168.88.0/24 //-sn:制作主机发现,不做端口扫描;扫描结果包含本机IP 端口扫描 nmap --min-rate 10000 -p- 192.168.88.136 扫描端口详细信息 端口扫描发现,该主机的22、80、139、445、3306、…

软件开源快速开发框架:降本增效,助力流程化办公!

随着时代的进步和社会的发展,应用软件开源快速开发框架的优势特点,可以让不少客户朋友顺利实现流程化办公,朝着数字化方向迈进。流辰信息是专业研发低代码技术平台的服务商,一直在低代码平台领域深耕细作,努力钻研&…

合并两个有序数组

给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。 请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。 注意:最终,合并后数组…

【spring data jpa】数据的增删改查(CRUD)

一、添加依赖 在pom文件中添加spring data jpa依赖 <dependency><groupId>org.springframework.data</groupId><artifactId>spring-data-jpa</artifactId><version>3.1.4</version> </dependency> <dependency><gr…

如何使用 arrayList.removeAll(Collection<?> c)?

引言 对于 Collection 集合及其实现类都有 removeAll(Collection<?> c)。 对于ArrayList 的实例对象&#xff0c;在数据比较多的情况下&#xff0c;方法 removeAll() 的传参 c 的类型是 HashSet会比是 ArrayList 的情况快的多。 原因 我们来细看一下ArrayList类的re…

perf性能分析

安装 apt install linux-tools-common linux-tools-generic 可能安装在/usr/bin/perf&#xff0c;如果版本不对&#xff0c;可以看看 /usr/lib/linux-tools/[version]/ 下有没有perf&#xff0c;如果有的话替换一下就可以 使用 perf record -g -p pid # 记录数据&#x…

C++桶排序算法的应用:存在重复元素 III

题目 给你一个整数数组 nums 和两个整数 indexDiff 和 valueDiff 。 找出满足下述条件的下标对 (i, j)&#xff1a; i ! j, abs(i - j) < indexDiff abs(nums[i] - nums[j]) < valueDiff 如果存在&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 示例…

城市广告牌安全传感器特点有哪些?

城市广告牌安全传感器特点有哪些&#xff1f; 在现代快节奏的都市生活中&#xff0c;城市的广告牌成为不可或缺的一部分&#xff0c;以各种形式和大小存在于城市的街头巷尾&#xff0c;商业中心和交通要道。广告牌是城市生命线组成的一部分。但是由于天气因素、材料老化、不当维…

MySQL [基础]] 学习笔记

MySQL 学习 文章目录 MySQL 学习1. 数据库三层结构2. 数据在数据库中的存储方式3. SQL 语句分类3.1 备份恢复数据库的表 4. Mysql 常用数据类型(列类型)4.1 数值型(整数)的基本使用4.2 数值型(bit)的使用4.3 数值型(小数)的基本使用4.4 字符串的基本使用(面试题)4.5 字符串使用…

【JUC】JMM

文章目录 1. 概述2. 三大特性2.1 可见性2.2 原子性2.3 有序性 3. 多线程对变量的读写过程4. 先行发生原则(happens-before) 1. 概述 CPU的运行并不是直接操作内存而是先把内存里边的数据读到缓存&#xff0c;而内存的读和写操作的时候就会造成不一致的问题 JVM规范中试图定义…

【软件测试】Requests库中处理cookie的几种方式

前言 发送请求时经常需要利用请求头中的cookie字段来做用户访问状态的保持&#xff0c;关于的cookie的处理常见有下面一些处理方式&#xff0c;这里做个小小的总结 1.直接在请求中传递cookies参数 import requestshost http://119.91.144.93:82 api r/ecshop/user.php url…

机器人命令表设计

演算命令 CLEAR 将数据 1 上被指定的编号以后的变数的内容&#xff0c;以及数据 2 上仅被指定的个数都清除至 0。 INC 在被指定的变数内容上加上 1。 DEC 在被指定的变数内容上减掉 1。 SET 在数据 1 上设定数据 2。 ADD 将数据 1 和数据 2 相加&#xff0c;得出的结果保存在数…

DataPath实现渐变效果

Android的vector矢量图很好用&#xff0c;可以画出保证清晰度的任意图形。但是Android Nougat之前的VectorDrawable不支持渐变色&#xff0c;如果要使用渐变色就要使用png图片或者自定义GradientDrawable。这么明显的不足&#xff0c;肯定是要修补上呀&#xff0c;API 24中的Ve…

Apache Spark 中的 RDD是什么

目录 RDD容错性 RDD进行迭代计算 RDD是Resilient Distributed Dataset的缩写&#xff0c;是Apache Spark中的一个关键概念。RDD是一种分布式的内存抽象&#xff0c;用于将数据划分为不同的片段以进行并行计算。RDD是一个只读的数据集&#xff0c;可以分布在集群的不同节点上&…