抓住計算機編程的靈魂,矩陣的應用以及圖形轉換

[外鏈圖片轉存中...(img-yGTT6oUQ-1597922217579)]編程

本文做者:樂字節-坑王老薛數組

二維圖形的矩陣變換(一)——基本概念

基本的二維變換可包括旋轉、縮放、扭曲,和平移四種,ide

抓住計算機編程的靈魂,矩陣的應用以及圖形轉換640

抓住計算機編程的靈魂,矩陣的應用以及圖形轉換640

而這些幾何運算則能夠轉換爲一些基本的矩陣運算:3d

抓住計算機編程的靈魂,矩陣的應用以及圖形轉換

這幾個變換都是線性的,但平移運算不是線性的,不能經過2*2矩陣運算完成。若要將點 (2, 1)在 x 方向將其平移 3 個單位,在 y 方向將其平移 4 個單位。 可經過先使用矩陣乘法再使用矩陣加法來完成此操做。對象

抓住計算機編程的靈魂,矩陣的應用以及圖形轉換

綜合這幾種基本運算,數學家們將其統一爲一個3*3矩陣,存儲形式以下:blog

抓住計算機編程的靈魂,矩陣的應用以及圖形轉換

因爲表示仿射變換的矩陣的第三列老是(0,0,1),在存儲矩陣的時候,大多隻存成一個2*3的數組。圖片

變換的原點數學

二維變換的參考點是很是重要的,例如以下旋轉的結果就大不相同:it

抓住計算機編程的靈魂,矩陣的應用以及圖形轉換 抓住計算機編程的靈魂,矩陣的應用以及圖形轉換

固然,有一種特殊的變換除外。那就是平移變換,不管原點是什麼其變換的結果都是沒有變化的。class

複合變換

複合變換的矩陣可經過將幾個單獨的變換矩陣相乘而獲得,這就意味着任何仿射變換的序列都可存儲於單個的 Matrix 對象中。

抓住計算機編程的靈魂,矩陣的應用以及圖形轉換

須要注意的是,複合變換是有順序的,通常說來,先旋轉、再縮放、而後平移,與先縮放、再旋轉、而後平移是不一樣的。

逆矩陣

能夠根據必定的運算求出某個矩陣的逆矩陣,這個矩陣能夠用來求出新的座標點在原座標系的位置。但須要注意的是,並不是全部矩陣都是可逆的,可逆矩陣要求是非奇異矩陣。

小結

算求出某個矩陣的逆矩陣,這個矩陣能夠用來求出新的座標點在原座標系的位置。但須要注意的是,並不是全部矩陣都是可逆的,可逆矩陣要求是非奇異矩陣。

小結

矩陣運算實際上是很是基礎的數學知識,在圖形學中應用得仍是很是普遍的,但大學學的時候每每不知道幹嗎用,如今用的時候卻又忘了啥原理了。本文這裏只是介紹了一些矩陣運算的基本概念,具體詳細的內容能夠參考下老師(衛星lezijie007,暗號66)的參考資料。