向量的模/长度/大小运算

向量是一个有大小和方向的有向线段,但是这个向量的“大小”具体是多少,我们无法直接从向量的数据上观察到。 在 Unity 引擎内,Vector3 类型的对象,有一个 magnitude 只读属性来获取向量的大小。

数学公式:

\left ( 3DV \right )\left | V \right |= \sqrt{x^{2}+y^{2}+z^{2}}

例:

\left |\left [ 2,3,5 \right ] \right |= \sqrt{2^{2}+3^{2}+5^{2}}= \sqrt{4+9+25}= \sqrt{38}\approx 6.164

公式解析:

1.一个向量求模,在数学上表示就是在向量的左右各加两根竖线,表示求模;

2.向量内每个分量单独二次方运算;2*2=4,3*3=9,5*5=25;

3.最终三个分量的二次方之和求平方根,所得的结果就是向量的模/长度/大小。

代码实现:

    /// 
    /// 大小/长度/模.
    /// 
    public float magnitude
    {
        get
        {
            //自身各分量平方运算.
            float X = this.x * this.x;
            float Y = this.y * this.y;
            float Z = this.z * this.z;
            return Mathf.Sqrt(X + Y + Z);//开根号,最终返回向量的长度/模/大小.
        }
        
    }

 各位可以与unityAPI对照一下看看计算结果是否一致。

你可能感兴趣的:(3D数学)