OpenGLに似た、シンプルな変換行列のスタックです。直交行列を扱うための工夫がなされています。 [詳細]
Public メソッド | |
MatrixStack (uint capacity) | |
コンストラクタ。 | |
void | Push () |
現在トップにある行列をコピーして、スタックにプッシュします。 | |
void | Pop () |
トップの行列をポップします。 | |
void | Mul (Matrix4 mat) |
引数の 'mat' でトップの行列を右側から乗算します。 | |
void | Mul1 (Matrix4 mat) |
直交行列 'mat' でトップの行列を右側から乗算します。もし行列が正規直交行列であることがわかっていれば、Mul()のかわりに Mul1()を使うことができます。正規直交行列で演算し続ける限り、逆計算はより速くなります。 | |
void | Set (Matrix4 mat) |
行列スタックのトップに、現在の行列をセットします。 | |
void | Set1 (Matrix4 mat) |
正規直交行列を設定します。行列が正規直交であることが事前にわかっている場合、Set()の代わりにSet1()を使用することができます。正規直交行列で演算する限り、逆数計算はより速くなります。 | |
Matrix4 | Get () |
現在、行列スタックのトップの行列を取得します。 | |
Matrix4 | GetInverse () |
キャッシュされた逆行列を必要に応じて更新し、返します。 | |
void | SetIdentity () |
トップの行列に単位行列をセットします。 | |
void | RotateX (float angle) |
トップの行列をX軸まわりで回転させます。 | |
void | RotateY (float angle) |
トップの行列をY軸まわりで回転させます。 | |
void | RotateZ (float angle) |
トップの行列をZ軸まわりで回転させます。 | |
void | Rotate (Vector3 axis, float angle) |
開発者が指定した軸で、トップの行列を回転させます。 | |
void | Scale (Vector3 value) |
トップの行列をスケールさせます。 | |
void | Translate (Vector3 value) |
トップの行列を平行移動させます。 | |
プロパティ | |
uint | Tag [get] |
Tag は一番上の行列の内容が変化したとき、インクリメントされる数値です。 | |
uint | Size [get] |
現在のスタックのサイズ。 | |
uint | Capacity [get] |
最大スタックサイズ。 |
OpenGLに似た、シンプルな変換行列のスタックです。直交行列を扱うための工夫がなされています。
MatrixStack | ( | uint | capacity | ) |
コンストラクタ。
capacity | スタックの最大の深さ。 |