向量的模/長度/大小運算

向量是一個有大小和方向的有向線段,但是這個向量的“大小”具體是多少,我們無法直接從向量的數據上觀察到。 在 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.最終三個分量的二次方之和求平方根,所得的結果就是向量的模/長度/大小。

代碼實現:

    /// <summary>
    /// 大小/長度/模.
    /// </summary>
    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對照一下看看計算結果是否一致。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章