数学基础 —— 向量运算(叉乘)
向量的叉乘,即求同时垂直两个向量的向量,即c垂直于a,同时c垂直于b(a与c的夹角为90°,b与c的夹角为90°)
c = a×b = (a.y*b.z-b.y*a.z , b.x*a.z-a.x*b.z , a.x*b.y-b.x*a.y)
以上图为例a(1,0,0),b(0,1,0),c=a×b = (0,0,1)
叉乘的几何意义
|c|=|a×b|=|a| |b|sinα (α为a,b向量之间的夹角)
|c| = a,b向量构成的平行四边形的面积 (如下图所示的平行四边形)
叉乘的拓展
1. 在一般的常识或者教科书中规定叉乘只有3d才拥有,其实2d也可以拓展出来一个叉乘形式,而且非常有用。
拓展方式:假设有两个2d向量a,b,我们直接把他们视为3d向量,z轴补0,那么这个时候的a,b向量的叉乘结果c,c.x=0,c.y=0,c.z=a.x*b.y-b.x*a.y,
这个时候可以吧2d的叉乘值定义为得到一个值,而不是得到一个向量,那么这个值k, k = c.z=a.x*b.y-b.x*a.y,我们可以通过这个k值得到很多有用的性质
**** 1.a,b向量构成的平行四边形的面积。
**** 2.如果k>0时,那么a正旋转到b的角度为<180°,如果k<0,那么a正旋转到b的角度为>180°,如果k=0 那么a,b向量平行。
ps:正旋转的定义参考
数学基础 —— 旋转(2D 正旋转)
---------------------
作者:keng_s
来源:CSDN
原文:https://blog.csdn.net/keng_s/article/details/52131034
版权声明:本文为博主原创文章,转载请附上博文链接!
数学基础 —— 向量运算(叉乘)相关推荐
- Unity游戏开发中的向量运算-点乘和叉乘
Unity游戏开发中的向量运算-点乘和叉乘 1.点乘: 定义: 又称点积.数量积.标量积.既可以由向量坐标的代数运算得出,也可以通过引入两个向量的长度和角度等几何概念来求解. 公式一: 公式二: 点积 ...
- Unity游戏开发——向量运算(点乘和叉乘)
Unity游戏开发--向量运算(点乘和叉乘) 0.前言 在游戏开发中,确定目标得方向,朝向,夹角等相关数据需要用到向量的计算,其中最常用到的就时点乘和叉乘. 因为我们主要研究的是游戏开发中的3D世界向 ...
- 两个向量的点乘和叉乘怎么算_Unity游戏开发——向量运算(点乘和叉乘)
0.前言 在游戏开发中,确定目标的方位,朝向,夹角等相关数据需要用到向量间的计算,其中最常用到的就是点乘和叉乘. 说实话,因为向量的运算在平时开发中不是经常使用,我也总弄混这两种运算的含义,所以这次好 ...
- 计算机图形学数学基础——向量点乘和叉乘
简单总结闫老师图形学课程中向量点乘和叉乘及其在图形学中的意义 1. 向量点乘和叉乘 1.1 向量点乘 1.2 向量叉乘 1.3 向量叉乘的意义 1.3.1 判断向量左右位置 1.3.2 判断点的内外位 ...
- 两向量叉乘的计算公式_向量运算(叉乘几何意义)
向量的叉乘,即求同时垂直两个向量的向量,即c垂直于a,同时c垂直于b(a与c的夹角为90°,b与c的夹角为90°) c = a×b = (a.y*b.z-b.y*a.z , b.x*a.z-a.x*b ...
- Unity 3D数学 — 向量运算
向量(又称适量)是游戏开发中非常重要的概念.是用于描述具有方向和大小两个属性的物理量. 在数学里有大小和方向的量就是向量.在几何中,向量可以用一段有方向的线段表示. 1.向量的运算 (1)加减法:向量 ...
- 【shaderforge学习笔记】 Vector Operations(向量运算)
shaderforge 向量运算 Append数据维度的附加 Component Mask数据维度的分解 Channel Blend通道混合 Cross Product叉积 Desaturate去色 ...
- 3D数学读书笔记——向量运算及在c++上的实现
本系列文章由birdlove1987编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhurui_idea/article/details/24782661 开始之前:接 ...
- AVX2浮点向量运算
在C/C++程序中,使用AVX2指令有很多种方法. 嵌入汇编是一般的方法,但是对于不熟悉汇编语言的人来说,有点勉为其难. gcc编译支持AVX2指令的编程.程序中需要使用头文件<immintri ...
最新文章
- Html编辑器kindsoft
- 扩增子分析QIIME. 3以管理员安装QIIME1.9.1至Ubuntu16.04
- WP8.1学习系列(第十二章)——全景控件Panorama开发指南
- 1、MyBatis面向接口编程
- 基于mcat开发智能合约应用(二)调用合约
- 数据库设计Step by Step (10)——范式化
- PAT_B_1015_C++(25分)
- sap fiori导出列表到excel_介绍一种Fiori标准应用的增强方式
- navicat 添加外键1215错误
- 贪心+优先队列之更改优先级-hdu1896
- 不要在构造和析构函数中使用虚函数
- MFC防止进程重复建立
- Ubuntu下ADSL配置
- html页面加载完成之后,网页加载时页面显示进度条加载完成之后显示网页内容...
- Python答题并统计的小程序
- python项目:基于OpenCV的学生网课睡意检测系统
- String slices
- mysql表join和union_mysql – 使用JOIN和UNION组合来自不同表的记录
- 如何想领导说清楚DCMM到底有什么好处?
- jenkins checkstyle:local variable hides a field