2013-04-08 200 views
7

我可以找到大量關於將四元數轉換爲方向矢量的問題,但是對於其他方式卻無法繞過,這讓我覺得我做錯了什麼,但忍耐着我。將方向矢量轉換爲四元數旋轉

我想要做的只是使用箭頭模型顯示方向燈的方向。

定向光的方向是一個單位矢量,但模型是用四元數旋轉的。

所以..如何旋轉此模型以匹配光線的方向?

還是我瘋了,我不能這樣做,因爲光沒有位置,但模型呢?

回答

10

方向向量不是一個定義的旋轉,它仍然有無數的可能的解決方案。請參閱沒有關於如何圍繞軸旋轉的信息。二,矢量是可能的,因爲矢量和旋轉(具有有意義的中心)並且實際上是完全定義的矩陣。

因爲在你的情況下,旋轉是相當無意義的,只需使用向上參考(即除非你的光線從上到下或反之亦然,那麼你需要另一個參考)。

因此,取方向向量D和向量U的交叉乘積作爲側向量S,然後交叉D和S得到新的U n。然後使用D,U n,S作爲行(或根據您的計算規則設置的列)作爲矩陣。矩陣到四元數是衆所周知的數學。

+0

http://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToQuaternion/ – Kit10 2016-10-30 17:53:19

+0

轉換方向和向上矩陣的詳細信息:https://stackoverflow.com/questions/18558910/direction-vector -to-旋轉矩陣 – 2017-10-28 16:26:12