神奇的向量旋转

2023-11-15

在计算几何中最常用的就是向量(叉积) 
今天来一起研究一下向量的旋转: 

首先考虑一个向量 p = (x,y) , 那么它写成坐标的形式就是x+iy,这个就是P点在复平面的坐标. 

问题: 假设现在有一个角度d,并且使向量p沿逆时针方向旋转d角度并且不改变其模的大小.请问旋转后 的向量p'是什么呢? 

问题分析: 

简单举例..... 
对于一个向量p (1,0),使它向逆时针旋转90度,并且不改变其模的大小,我们会很清楚的画出,这个变化后的向量就是p' (0,1),我们把它们都恢复的一般形式,原向量(1,0) --- 1 + i * 0, 新向量(0,1) --- 0 + i * 1,我们不难发现把原来的向量p的一般形式乘以一个i,然后整理就会得到新的向量p'的坐标一般形式....进一步想象,i是什么呢? i = cos(90) + i*sin(90);那也就是说可以得出这样一个结论: 

对于一个向量p : x + i * y 来说,如果向逆时针旋转d角度的话,新的向量p'应该是向量p的一般表达式(x+i*y)乘以cos(d)+i*sin(d) ,然后整理得出一个结果,将i的系数看成p'的复数部分,将其他部分看成p'的整数部分,由于又要保证它的大小不改变,所以我们只要保证乘的向量的模大小要为1,恰巧cos(d)+i*sin(d)全部满足. 

所以说对于p = (x,y)这个向量向逆时针旋转且大小不改变所得到的向量如下: 

p: (x,y) --------> p': ( x*cos(d)-y*sin(d) , x*sin(d)+y*cos(d) )


如果是向顺时针旋转则: 

p: (x,y) --------> p': ( x*cos(-d)-y*sin(-d) , x*sin(-d)+y*cos(-d) )


此重要结论可以运用到计算几何中,效果很明显.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

神奇的向量旋转 的相关文章

随机推荐

  • IDEA使用JDBC连接MySQL数据库详细教程

    文章目录 创建项目 导入驱动 让导入的驱动生效 注册数据库驱动 连接数据库 创建项目 首先需要保证你已经成功安装mysql和下载连接MySQL数据库的驱动 在IDEA里面创建一个java项目 选择创建Java项目 JDK这里选择1 8 直接
  • 二进制文件与文本文件详解

    二进制文件 定义 二进制文件就是把内存中的数据按其在内存中存储的形式原样输出到磁盘中存放 即存放的是数据的原形式 二进制文件是包含在 ASCII 及扩展 ASCII 字符中编写的数据或程序指令的文件 一般是可执行程序 图形 声音等文件 有自
  • LeetCode 4 - 寻找两个正序数组的中位数

    二分 递归 如果某个有序数组长度是奇数 那么其中位数就是中间元素 如果长度是偶数 那么中位数就是中间两个数字的平均值 假设两个有序数组的长度分别为 m 和 n 由于两个数组长度之和 m n 的奇偶不确定 为了简化代码 在合并后的数组找到第
  • Android 环信的简单使用

    最近在项目中用到了即使用讯 客户要求用环信 我擦 第一次做 坑啊 网上对这个没有特别明确的使用教程 环信的官网也不像其他的第三方有明确的使用方法 只是说了一个简单的集成 看其他人的博客感觉都说的很麻烦 很含糊 所以现在项目完成了 做个简单的
  • MySQL数据库更换数据路径

    1 路径 原路径 datadir var lib mysql socket var lib mysql mysql sock log error var log mysqld log 更换后目标路径 datadir home mysql s
  • win10 python永久换源-- 解决VSCode配置ESP IDF到最后python virtual environment 错误 问题

    运行shell 找到 python 的 Scripts 文件夹下 例如 cd F ESP VSC ESP32 ENV python env idf4 4 py3 8 env Scripts 执行它 pip config set global
  • HTML静态网页设计基础

    如何新建一个HTML文件 答 1 新建一个TXT文件 2 打开TXT文件后 输入网页基本结构 另存为 可得到 回答over 下一步 html静态网页的基本结构 以及插入图片 插入超链接 分段 换行 标题号 表格标签 标题号 h2 第二分网页
  • java和bootstrap实现行内编辑

    实现BootstrapTable单个单元格编辑后立马提交保存 批量编辑已经选中的单元格后提交保存的实现 排序有点乱了 随便记一下吧 大概就是引入这三个文件 首先引入x editable相关的js css文件
  • unity Shader实现半透明阴影

    在shader中 要对移动端的兼容 还不想实现两套分开兼容的话 pragma exclude renderers gles gles3 glcore pragma target 4 5 这两句话一定要改掉 第一行代码直接剔除了gles的渲染
  • CStdioFile扩展(支持Ansi、Unicode、Utf-8等文本格式)

    头文件声明 CStdioFileEx h StdioFileEx h interface for the CStdioFileEx class Version 1 1 23 August 2003 Incorporated fixes fr
  • 防抖和节流怎么做

    防抖和节流都是为了控制代码执行频率 提高性能和用户体验 防抖和节流的区别在于 防抖是在一定时间内只执行最后一次操作 而节流是在一定时间内只执行一次操作 下面是防抖和节流的代码实现 防抖 function debounce fn delay
  • AdapterViewFlipper和StackView的使用

    练习使用AdapterViewFlipper 1 xml布局文件
  • 20230903-闹钟

    app cpp include app h include ui app h int k1 true APP APP QWidget parent QWidget parent ui new Ui APP ui gt setupUi thi
  • IDEA编译器中关闭包显示并排的问题

    问题 IDEA编译器默认是包并排显示 不好操作 解决 取消Compact Middle Packages打勾就可以了
  • CMOS图像传感器——TOF 图像传感器

    一 3D成像技术概述 图像传感器一直以来都是人类研究的热点 但随着当代科学技术发展 人类对于传统的 2D 图像传感器的要求越来高 不仅期望着更高分辨率 更快速度 更大的动态范围 人类加希望能够获得物体深信息 但是 2D 成 像技术现在已经不
  • 接口测试与功能测试的区别~

    今天为大家分享的是我们在日常测试工作中 一定会接触并且目前在企业中是主要测试内容的 功能测试与接口测试 一 功能测试与接口测试的基本概念 1 1 什么是功能测试呢 功能测试 是黑盒测试的一方面 检查实际软件的功能是否符合用户的需求 功能测试
  • 【Java面试题汇总】Java基础篇——基础、修饰符和关键字(2023版)

    导航 黑马Java笔记 踩坑汇总 JavaSE JavaWeb SSM SpringBoot 瑞吉外卖 SpringCloud 黑马旅游 谷粒商城 学成在线 设计模式 牛客面试题 目录 一 基础 1 1 请你说说Java的特点和优点 为什么
  • 方法的重写和重载

    1 重载是在本类中的 就是同一个方法名而内容不一样的方法 也就是同名 同类型的方法 返回类型可以不考虑 允许存在多个同名方法 public void show int int 这个方法名 public void show int int i
  • 裁剪图片vue-cropper实例 基础功能 预览 获取裁剪后图片数据

    在项目中使用到了裁剪图片功能 通过vue croppe实现 安装和引入 npm 安装 npm install vue cropper yarn 安装 yarn add vue cropper 项目中引用引入 这里我的项目是 vue2 组件中
  • 神奇的向量旋转

    在计算几何中最常用的就是向量 叉积 今天来一起研究一下向量的旋转 首先考虑一个向量 p x y 那么它写成坐标的形式就是x iy 这个就是P点在复平面的坐标 问题 假设现在有一个角度d 并且使向量p沿逆时针方向旋转d角度并且不改变其模的大小