博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
矢量的叉积和点积计算
阅读量:4877 次
发布时间:2019-06-11

本文共 1228 字,大约阅读时间需要 4 分钟。

  • 标量(Scalar,标量是只有模没有方向的量,即距离)。
  • 矢量(Vector,也称为向量,矢量是有模和方向但没有位置的量,即方向加速度)。
  • 点(点是没有大小之分的位置)。

1.标量k和矢量v的乘除:

  相乘:kv=(k*vx, k*vy, k*vz);

  相除:v/k=(vx/k, vy/k, vz/k); 只有矢量可以被标量除,标量不能被矢量除,那样是没有意义的。

 

2.矢量a和标量b的加减:

  相加:a+b=(ax+bx, ay+by, az+bz);

  相减:a-b=(ax-bx, ay-by, az-bz);

 

3.矢量的模:

  矢量的模是一个标量,可以理解为矢量在空间内的长度。

  公式:|v|=√(vx²+vy²+vz²);

 

4.单位矢量(矢量归一化)

  单位矢量(即模为1的矢量),任何给定的非零矢量转换为单位矢量的过程被称为归一化。

  在矢量的头上加一个 ^ 表示单位矢量。

  公式:^v = v/|v|,v是任意非零矢量。

 

5.矢量的点积 dot(a,b)

  点积的名称来源于其符号:a·b。

  点积的计算结果是一个模。

  点积的计算方式有两种:

    公式一: a·b = ax*bx + ay*by + az*bz;

    公式二: a·b = |a|*|b|*cosΘ; (可推出^a·^b = cosΘ).

  点积有很多重要的性质:

    性质一:点积可结合标量相乘。如:设k为标量,k(a·b)= a·(kb) = (ka).b;

    性质二:点积可以结合矢量的加减法。如:a·(b+c) = a·b + a·c; a·(b-c) = a·b + a·-c;

    性质三:矢量自己和自己的点积等于该矢量的模的平方。如:v·v = vxvx + vyvy + vzvz = |v|²;

    性质四:两个单位矢量的点积等于他们夹角的余弦值。如 ^a·^b = cosΘ;

    性质五:利用性质四可以计算出夹角的度数(当度数为0~180之间)。如:Θ = arcos(^a·^b),其中arcos是反余弦操作。

 

 6.矢量的叉积 

  叉积的名称也来源于其符号:aXb。

  与点积不同,叉积的结果是一个矢量。

  公式一:aXb = (ax,ay,az)X(bx,by,bz) = (aybz - azby, azbx - axbz, axby - byax);

  公式二:|aXb| = |a||b|sinΘ;

  【aXb≠bXa,即,叉积不满足交换律;但它满足反交换律 aXb = -(bXa);不满足结合律(aXb)Xc ≠ aX(bXc);】

  

  叉积最常见的用途是:

    1)计算垂直于一个平面、三角形、多边形的矢量。

    2)判断三角面片的朝向。

转载于:https://www.cnblogs.com/sweetXiaoma/p/8684489.html

你可能感兴趣的文章
Rappid 消除试用版的弹出框
查看>>
精华 ionic入门之色彩、图标、边距和界面组件:列表
查看>>
顺变者昌
查看>>
Linux上vi(vim)编辑器使用教程
查看>>
promise intro2-用法
查看>>
极客范:如何使用 Cloud Insight 来监控闭路电视?
查看>>
Pytorch半精度浮点型网络训练问题
查看>>
Js操作Select大全
查看>>
java native method
查看>>
进入光云第一次做完项目的感受
查看>>
dns 视图
查看>>
[LeetCode] 合并K个排序链表
查看>>
leetcode--Balanced Binary Tree
查看>>
shell字符串处理
查看>>
js 数据绑定
查看>>
jsp的C标签一般使用方法以及js接收servlet中的对象及对象数字
查看>>
H5 简介
查看>>
window.frameElement的使用
查看>>
nl命令
查看>>
如何使用jQuery $.post() 方法实现前后台数据传递
查看>>