クラス MatrixStack

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スタックの最大の深さ。