我有一個類,它包含一個用於縮放和平移的4x4矩陣。我將如何實現這個類的旋轉方法?我應該將輪換作爲一個單獨的矩陣來實現嗎?旋轉和OpenGL矩陣
1
A
回答
3
您可以將當前矩陣與旋轉矩陣相乘。看看http://en.wikipedia.org/wiki/Rotation_matrix
1
有一個網站,我每次使用時,我需要查找3D轉換的細節,稱爲http://www.euclideanspace.com。矩陣旋轉中的特定頁面可以找到here。
編輯:圍繞給定座標軸旋轉,請查看axis & angle表示法。此頁面還鏈接到如何將一個表示法翻譯爲另一個表示法的說明。
如果您需要圍繞多個軸旋轉,只需乘以相應的矩陣。
1
回答問題的後半部分時,單個4x4矩陣完全有能力進行縮放,平移和旋轉。所以,除非你對可以處理的4x4矩陣有特別的限制,否則一個4x4就可以滿足你的要求。
至於關於任意矢量的旋轉(如您在評論中所要求的),請查看yabcok鏈接到的維基百科文章中的「旋轉關於任意矢量」部分。你會想通過用零填充4x4矩陣,除了4,4(縮放)位置,它應該是一個。然後使用矩陣乘法與縮放/平移4x4生成一個新的4x4矩陣。
0
你想確保你找到一個參考,它討論用於計算機圖形的正確類型的矩陣(即使用4x4變換矩陣進行旋轉/平移/傾斜的3D齊次座標)。
參見計算機圖形 「聖經」,如Foley and Van Dam(pg. 213),或這些中的一個:從CProgramming.com
0
相關問題
- 1. OpenGL旋轉矩陣和ArcBall
- 2. OpenGL的矩陣旋轉四元
- 3. 的Android的OpenGL旋轉矩陣變形
- 4. 旋轉矩陣
- 5. WebGl旋轉矩陣
- 6. C#旋轉矩陣
- 7. AS3矩陣旋轉
- 8. C++/OpenGL - 旋轉矩形
- 9. 如何使用矩陣在opengl中移動和旋轉對象
- 10. 使用matplotlib旋轉矩陣使用旋轉矩陣
- 11. 旋轉矩陣中的列和行
- 12. Matlab中的旋轉矩陣
- 13. 旋轉矩陣問題
- 14. 旋轉利用矩陣
- 15. SVG旋轉變換矩陣
- 16. 基本矩陣:純旋轉
- 17. 原地矩陣旋轉
- 18. 仿射旋轉矩陣
- 19. 使用旋轉矩陣opencv
- 20. 旋轉多維矩陣
- 21. 計算旋轉矩陣
- 22. 旋轉矩陣不正交
- 23. Python旋轉矩陣錯誤
- 24. Eigen中的旋轉矩陣
- 25. 橢圓旋轉矩陣?
- 26. 如何旋轉矩陣?
- 27. 從基本矩陣確定相機旋轉和平移矩陣
- 28. 使用矩陣乘法在opengl中旋轉立方體
- 29. 將旋轉矢量應用於OpenGL相機或「查看矩陣」
- 30. OpenCV:旋轉/平移向量到OpenGL模型視圖矩陣
啊,所以我只會產生一個旋轉矩陣,並與目前的矩陣乘法而不是存儲2?我怎麼會產生一個旋轉矩陣,雖然給了一個向量xyz旋轉三維? – 2009-02-12 12:25:08
@Nowell,你是什麼意思?根據您的結構,創建一個旋轉矩陣並將其乘以源矩陣。或者,您可以將乘法直接應用於矩陣。 – strager 2009-02-12 13:24:38