有兩個矩陣M1 , M2。
我現在想求M1 到 M2 之間的矩陣
應該不能用線性插值,因為矩陣可能有旋轉,縮放,切變等
有什么好辦法呢?
uj5u.com熱心網友回復:
如果沒有其它限制條件, 有無窮個解, 因為軌跡可以是任意的uj5u.com熱心網友回復:
一般要分開處理。而且像旋轉沒辦法用矩陣描述。從矩陣上看旋轉就是一個縮放和切邊的結合,而且也看不出你要轉多少圈。uj5u.com熱心網友回復:
旋轉可以用矩陣描述啊。
cosθ 0 sinθ 0
0 1 0 0
?sinθ 0 cosθ 0
0 0 0 1
這樣就是了
uj5u.com熱心網友回復:
比如……最顯而易見的問題:你怎么描述要轉幾圈?
uj5u.com熱心網友回復:
一般要分開處理。而且像旋轉沒辦法用矩陣描述。從矩陣上看旋轉就是一個縮放和切邊的結合,而且也看不出你要轉多少圈。
旋轉可以用矩陣描述啊。
cosθ 0 sinθ 0
0 1 0 0
?sinθ 0 cosθ 0
0 0 0 1
這樣就是了
比如……最顯而易見的問題:你怎么描述要轉幾圈?
這個當然是線性的啦
uj5u.com熱心網友回復:
一般要分開處理。而且像旋轉沒辦法用矩陣描述。從矩陣上看旋轉就是一個縮放和切邊的結合,而且也看不出你要轉多少圈。
旋轉可以用矩陣描述啊。
cosθ 0 sinθ 0
0 1 0 0
?sinθ 0 cosθ 0
0 0 0 1
這樣就是了
比如……最顯而易見的問題:你怎么描述要轉幾圈?
這個當然是線性的啦
別想當然……
我說初始狀態是
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
結束狀態是
-1 0 0 0
0 -1 0 0
0 0 -1 0
0 0 0 1
直接線性過度是什么效果?我告訴你我想順時針轉10圈半呢?
uj5u.com熱心網友回復:
微積分................uj5u.com熱心網友回復:
矩陣可能有旋轉,縮放,切變等 你這考慮的太復雜以簡單的物體空間兩個位置的移動為例 只需考慮移動和轉動,這種情況下齊次變換矩陣的第四行保持 0 0 0 1不變
移動在兩個坐標點之間插值, 而轉動將起始位置的姿態3X3矩陣轉換為四元數Quaternion和移動同步插值 slerp
縮放設計第四行第四列的數字變化,也是一樣處理,切邊就不清楚了
uj5u.com熱心網友回復:
不好意思, 新電腦, 拼音輸入法還沒有訓練好uj5u.com熱心網友回復:
矩陣可能有旋轉,縮放,切變等 你這考慮的太復雜
以簡單的物體空間兩個位置的移動為例 只需考慮移動和轉動,這種情況下齊次變換矩陣的第四行保持 0 0 0 1不變
移動在兩個坐標點之間插值, 而轉動將起始位置的姿態3X3矩陣轉換為四元數Quaternion和移動同步插值 slerp
縮放設計第四行第四列的數字變化,也是一樣處理,切邊就不清楚了
我在想。其實在幾何中,4x4矩陣只是描述了3條軸和原點。
第一:先將矩陣排除了縮放,從矩陣中提取出每條軸的縮放長度,另外處理
第二:繼續使用線性插值的同時保持每條軸的長度不變
第三:再處理縮放
uj5u.com熱心網友回復:
矩陣可能有旋轉,縮放,切變等 你這考慮的太復雜
以簡單的物體空間兩個位置的移動為例 只需考慮移動和轉動,這種情況下齊次變換矩陣的第四行保持 0 0 0 1不變
移動在兩個坐標點之間插值, 而轉動將起始位置的姿態3X3矩陣轉換為四元數Quaternion和移動同步插值 slerp
縮放設計第四行第四列的數字變化,也是一樣處理,切邊就不清楚了
我在想。其實在幾何中,4x4矩陣只是描述了3條軸和原點。
第一:先將矩陣排除了縮放,從矩陣中提取出每條軸的縮放長度,另外處理
第二:繼續使用線性插值的同時保持每條軸的長度不變
第三:再處理縮放
最后一個元素數值是整體Scale的,要處理各向變形,可能要改變模型本身更簡單,比如X向放大一倍,將所有顯示點的X坐標值乘以2就可以了
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/54380.html
標籤:圖形處理/算法
