|
|
(同じ利用者による、間の6版が非表示) |
1行目: |
1行目: |
− | ミラー行列は、実のところ[[拡大縮小行列]]であり、回転軸としたい要素の拡縮率をマイナスにすると反転する。
| + | ミラー行列(mirror, flip)は、実のところ[[拡大縮小行列]]の延長であり、回転軸としたい要素の拡縮率をマイナスにしたものである。 |
| | | |
| 拡大縮小行列(4x4) | | 拡大縮小行列(4x4) |
22行目: |
22行目: |
| </math> | | </math> |
| | | |
− | この「Y軸で反転」は[[パソコン]]の2DCGの座標系にありがちな「原点は左上」を算数のグラフ描画に適した「原点は左下」に変換したい場合によく使われる。 | + | この「Y軸で反転」は[[パソコン]]の2DCGの座標系にありがちな「原点は左上」を算数のグラフ描画に適した「原点は左下」に変換したい場合によく使われる。たぶん3DCGより2DCGの方が出番が多いと思われる。 |
| | | |
| さらに「原点を画面の中央にしたい場合」は[[平行移動行列]]を乗算しよう。 | | さらに「原点を画面の中央にしたい場合」は[[平行移動行列]]を乗算しよう。 |
− | なお、行列は「乗算の順序」が重要だぞ。
| + | なお、行列は[[実数]]の[[四則演算]]と違い「乗算の順序」が重要だぞ。これを間違えると残念な結果になる。 |
| | | |
| == 関連項目 == | | == 関連項目 == |
ミラー行列(mirror, flip)は、実のところ拡大縮小行列の延長であり、回転軸としたい要素の拡縮率をマイナスにしたものである。
拡大縮小行列(4x4)
![{\displaystyle {\begin{vmatrix}x&0&0&0\\0&y&0&0\\0&0&z&0\\0&0&0&1\\\end{vmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f5d4f5ecc9c529c9e206bb32f7d2b603fdb9c674)
拡縮せず(等倍=1)かつ、Y軸で反転させたいならyを-1にする。
![{\displaystyle {\begin{vmatrix}1&0&0&0\\0&-1&0&0\\0&0&1&0\\0&0&0&1\\\end{vmatrix}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/adfc6f8a52981bce851d2d4b31543fa322f9b545)
この「Y軸で反転」はパソコンの2DCGの座標系にありがちな「原点は左上」を算数のグラフ描画に適した「原点は左下」に変換したい場合によく使われる。たぶん3DCGより2DCGの方が出番が多いと思われる。
さらに「原点を画面の中央にしたい場合」は平行移動行列を乗算しよう。
なお、行列は実数の四則演算と違い「乗算の順序」が重要だぞ。これを間違えると残念な結果になる。