Effekseer
 全て クラス 関数 変数
Public メソッド | Static Public メソッド | Public 変数 | すべてのメンバ一覧
構造体 Effekseer::Matrix43

4x3行列 [詳細]

#include <Effekseer.h>

Public メソッド

void Indentity ()
 単位行列化を行う。
 
void Scaling (float x, float y, float z)
 拡大行列化を行う。 [詳細]
 
void RotationX (float angle)
 反時計周り方向のX軸回転行列化を行う。 [詳細]
 
void RotationY (float angle)
 反時計周り方向のY軸回転行列化を行う。 [詳細]
 
void RotationZ (float angle)
 反時計周り方向のZ軸回転行列化を行う。 [詳細]
 
void RotationXYZ (float rx, float ry, float rz)
 反時計周り方向のXYZ軸回転行列化を行う。 [詳細]
 
void RotationZXY (float rz, float rx, float ry)
 反時計周り方向のZXY軸回転行列化を行う。 [詳細]
 
void RotationAxis (const Vector3D &axis, float angle)
 任意軸に対する反時計周り方向回転行列化を行う。 [詳細]
 
void RotationAxis (const Vector3D &axis, float s, float c)
 任意軸に対する反時計周り方向回転行列化を行う。 [詳細]
 
void Translation (float x, float y, float z)
 移動行列化を行う。 [詳細]
 
void GetSRT (Vector3D &s, Matrix43 &r, Vector3D &t) const
 行列を、拡大、回転、移動の行列とベクトルに分解する。 [詳細]
 
void GetScale (Vector3D &s) const
 行列から拡大ベクトルを取得する。 [詳細]
 
void GetRotation (Matrix43 &r) const
 行列から回転行列を取得する。 [詳細]
 
void GetTranslation (Vector3D &t) const
 行列から移動ベクトルを取得する。 [詳細]
 
void SetSRT (const Vector3D &s, const Matrix43 &r, const Vector3D &t)
 行列の拡大、回転、移動を設定する。 [詳細]
 

Static Public メソッド

static void Multiple (Matrix43 &out, const Matrix43 &in1, const Matrix43 &in2)
 行列同士の乗算を行う。 [詳細]
 

Public 変数

float Value [4][3]
 行列の値
 

説明

4x3行列

覚え書き
右手系(回転:反時計回り)
V[x,y,z,1] * M の形でベクトルとの乗算が可能である。
[0,0][0,1][0,2]
[1,0][1,1][1,2]
[2,0][2,1][2,2]
[3,0][3,1][3,2]

関数

void Effekseer::Matrix43::GetRotation ( Matrix43 r) const

行列から回転行列を取得する。

引数
s[out] 回転行列
void Effekseer::Matrix43::GetScale ( Vector3D s) const

行列から拡大ベクトルを取得する。

引数
s[out] 拡大ベクトル
void Effekseer::Matrix43::GetSRT ( Vector3D s,
Matrix43 r,
Vector3D t 
) const

行列を、拡大、回転、移動の行列とベクトルに分解する。

引数
s[out] 拡大行列
r[out] 回転行列
t[out] 位置
void Effekseer::Matrix43::GetTranslation ( Vector3D t) const

行列から移動ベクトルを取得する。

引数
t[out] 移動ベクトル
static void Effekseer::Matrix43::Multiple ( Matrix43 out,
const Matrix43 in1,
const Matrix43 in2 
)
static

行列同士の乗算を行う。

引数
out[out] 結果
in1[in] 乗算の左側
in2[in] 乗算の右側
void Effekseer::Matrix43::RotationAxis ( const Vector3D axis,
float  angle 
)

任意軸に対する反時計周り方向回転行列化を行う。

引数
axis[in] 回転軸
angle[in] 角度(ラジアン)
void Effekseer::Matrix43::RotationAxis ( const Vector3D axis,
float  s,
float  c 
)

任意軸に対する反時計周り方向回転行列化を行う。

引数
axis[in] 回転軸
s[in] サイン
c[in] コサイン
void Effekseer::Matrix43::RotationX ( float  angle)

反時計周り方向のX軸回転行列化を行う。

引数
angle[in] 角度(ラジアン)
void Effekseer::Matrix43::RotationXYZ ( float  rx,
float  ry,
float  rz 
)

反時計周り方向のXYZ軸回転行列化を行う。

引数
rx[in] 角度(ラジアン)
ry[in] 角度(ラジアン)
rz[in] 角度(ラジアン)
void Effekseer::Matrix43::RotationY ( float  angle)

反時計周り方向のY軸回転行列化を行う。

引数
angle[in] 角度(ラジアン)
void Effekseer::Matrix43::RotationZ ( float  angle)

反時計周り方向のZ軸回転行列化を行う。

引数
angle[in] 角度(ラジアン)
void Effekseer::Matrix43::RotationZXY ( float  rz,
float  rx,
float  ry 
)

反時計周り方向のZXY軸回転行列化を行う。

引数
rz[in] 角度(ラジアン)
rx[in] 角度(ラジアン)
ry[in] 角度(ラジアン)
void Effekseer::Matrix43::Scaling ( float  x,
float  y,
float  z 
)

拡大行列化を行う。

引数
x[in] X方向拡大率
y[in] Y方向拡大率
z[in] Z方向拡大率
void Effekseer::Matrix43::SetSRT ( const Vector3D s,
const Matrix43 r,
const Vector3D t 
)

行列の拡大、回転、移動を設定する。

引数
s[in] 拡大行列
r[in] 回転行列
t[in] 位置
void Effekseer::Matrix43::Translation ( float  x,
float  y,
float  z 
)

移動行列化を行う。

引数
x[in] X方向移動
y[in] Y方向移動
z[in] Z方向移動

この構造体の説明は次のファイルから生成されました: