Por que estamos transformando vetores 3D com matrizes 4x4?

Por que não uma matriz 3x3? Por que tudo está organizado em uma matriz 4x4 exatamente assim? Por que a última linha é preenchida com zeros e um no final? Eu fiz essas perguntas no dia anterior, decidi investigar a questão e contar o que descobri.





No artigo, estaremos interessados ​​apenas em transformações afins, e em particular rotação, escala e movimento, que são ativamente usados ​​na programação gráfica e no desenvolvimento de jogos em geral.





: . , , , (A⋅x). , , , (+b).





T, x





T (\ vec {x}) = A \ vec {x} + \ vec {b}

, b x . x x', :





\ begin {array} {ll} A \ rightarrow [a] \ rightarrow a, \\ \ vec {b} \ rightarrow (b) \ rightarrow b, \\ \ vec {x} \ rightarrow x, \\ T (x ) \ rightarrow x '\ end {array}





x '= ax + b

x ( ), b ( ).





, , . M, :





x '= ax + b = M (x)

x' = 3x + 4 (3x +4 ) .





\ begin {array} {ll} Mx = 3x + 4 \\ M = (3x + 4) / x \\ M = 3 + (\ frac {4} {x}) \ end {array}

, ( 3x [3]), (x+4) , M x.





:

+4 +4y, y, x ,





x '= 3x + 4y \\ y' = \ _x + \ _y

2x2, x' = 3x+4 x, . . , .





\ begin {bmatrix} x '\\ y' \ end {bmatrix} = \ begin {bmatrix} 3 & 4 \\ \ _ & \ _ \ end {bmatrix} \ begin {bmatrix} x \\ y \ end {bmatrix }

2x2 , , - y, +4y , +4, x :





\ begin {bmatrix} x '\\ y' \ end {bmatrix} = \ begin {bmatrix} 3 & 4 \\ \ _ & \ _ \ end {bmatrix} \ begin {bmatrix} x \\ 1 \ end {bmatrix } \ rightarrow \ begin {array} {l} x '= 3 \ cdot x + 4 \ cdot 1 \\ y' = \ _ \ cdot x + \ _ \ cdot 1 \ end {array}

, , , , 3x+4 x' - y' y' ,





\ begin {bmatrix} x '\\ 1 \ end {bmatrix}

. : y' = 1 = 0 ⋅ x + 1 ⋅ 1





\ begin {bmatrix} x '\\ 1 \ end {bmatrix} = \ begin {bmatrix} 3 & 4 \\ 0 & 1 \ end {bmatrix} \ begin {bmatrix} x \\ 1 \ end {bmatrix}

, x , .





\ begin {bmatrix} a & b \\ 0 & 1 \ end {bmatrix}

(a), (b) (0 1) y' 1, x' , .





- , , . ():





\ begin {bmatrix} 3 e 4 \\ 0 & 1 \ end {bmatrix} \ begin {bmatrix} 1 \\ 1 \ end {bmatrix} = \ begin {bmatrix} 7 \\ 1 \ end {bmatrix}

,





, , - z, y .





22 . b .





x' y' , , z' 1 .





, () , () :





:












All Articles