向量的点积(标量积、内积)

几何意义:

1.计算两个向量之间的夹角
2.计算一个向量在另一个向量上的投影

代数定义:

几何定义


进而可以进一步判断两个向量是否同一方向或正交(即垂直)等方向关系,具体对应关系为:
a∙b>0→方向基本相同,夹角在0°到90°之间
a∙b=0→ 正交,相互垂直
a∙b<0→ 方向基本相反,夹角在90°到180°之间

几何定义推导代数定义:

代数定义推导几何定义:


计算点直线的垂直距离:

// unity 代码
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TestPointDistanceLine : MonoBehaviour {

    public Transform point;
    public Transform lineStart;
    public Transform lineEnd;
    public Transform perpendicular;

    private void Update () {
        Vector3 a = point.position - lineStart.position; 
        Vector3 b = lineEnd.position - lineStart.position;

        float distance = Mathf.Abs(Vector3.Dot(a,b.normalized)); //方法一: 求向量 a 在向量 b 上的投影长度

        Vector3 projectVector = Vector3.Project(a, b); //方法二: 求向量 a 在向量 b 上的投影向量,然后取向量长度
        perpendicular.position = lineStart.position + projectVector;

        Debug.Log($"distance:{distance}, projectVector.magnitude:{projectVector.magnitude}");
    }
}

主要代码:

float distance = Mathf.Abs(Vector3.Dot(a,b.normalized));

推算过程:


https://www.cnblogs.com/gxcdream/p/7597865.html
https://baike.baidu.com/item/点积

反射向量计算:
https://www.cnblogs.com/graphics/archive/2013/02/21/2920627.html
投影后的向量计算:
https://www.cnblogs.com/graphics/archive/2010/08/03/1791626.html
点到直线与面的距离公式:
https://zhuanlan.zhihu.com/p/63499708

版权声明:本文为kingBook原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/kingBook/archive/2004/01/13/10696652.html