2010-10-20 61 views
1

閱讀谷歌後,我仍然不完全明白這是什麼意思?有人能解釋這一點嗎?可能是一個簡單的例子?非常感謝你。Vector3.normalize();

回答

6

歸一化矢量意味着改變其部件,從而其總長度等於1

在僞碼:

length = sqrt((vec.x * vec.x) + (vec.y * vec.y) + (vec.z * vec.z)) 
vec.x /= length 
vec.y /= length 
vec.z /= length 

這具有實時3D許多用途,如範載體具有有趣的屬性。

+0

感謝您的編輯,很好的捕獲。 – jv42 2016-09-21 15:00:30

1

規格化矢量將其縮放到長度1.0,而不改變其方向。

編輯:這是通過找到向量的長度,然後由長度將每個座標的:

長度= SQRT(X * X + Y * Y + Z * Z);

norm = [x/length,y/length,z/length];

顯然你不能規範化一個零長度的向量。

+1

使它成爲'單位矢量',適用於各種有趣的計算。 – Emiel 2010-10-20 10:08:09

+0

這是什麼單位矢量?與正常矢量相比,它有什麼不同? – RoR 2010-10-22 03:37:33

+0

單位矢量是任何長度爲1的矢量。 – 2010-10-22 06:53:05