OROCHI
 
Loading...
Searching...
No Matches
GxMatrixAffine Struct Reference

アフィン変換行列(行優先) More...

#include <GxMatrix.h>

Inheritance diagram for GxMatrixAffine:
Collaboration diagram for GxMatrixAffine:

Public Member Functions

初期化
 GxMatrixAffine (void)
 デフォルトコンストラクタ(要素は全て0で初期化される)
 
GX_INLINE GxMatrixAffine (INIT initType)
 コンストラクタ(引数のタイプで要素を初期化する)
 
GX_INLINE GxMatrixAffine (const GxQuaternion &quaternion, const GxVector3 &position)
 コンストラクタ
 
GX_INLINE GxMatrixAffine (const GxQuaternion &quaternion)
 コンストラクタ
 
GX_INLINE GxMatrixAffine (const GxVector3 &position)
 コンストラクタ
 
GX_INLINE GxMatrixAffine (f32 m00, f32 m01, f32 m02, f32 m10, f32 m11, f32 m12, f32 m20, f32 m21, f32 m22, f32 m30, f32 m31, f32 m32)
 コンストラクタ
 
GX_INLINE GxMatrixAffine (const GxMatrix44 &matrix)
 コンストラクタ
 
GX_INLINE GxMatrixAffine (const GxVector3 &position, const GxMatrix33 &orientation)
 コンストラクタ
 
GX_INLINE GxMatrixAffine (const GxMatrixAffine &matrix)
 コピーコンストラクタ
 
GX_FORCE_INLINE void initialize (const GxQuaternion &quaternion, const GxVector3 &position)
 初期化
 
操作
GX_FORCE_INLINE const GxMatrixAffinemulScalar (f32 scalar)
 スカラ乗算
 
GX_FORCE_INLINE const GxMatrixAffinedivScalar (f32 scalar)
 スカラ除算
 
GX_FORCE_INLINE const GxMatrixAffineaddMatrix (const GxMatrixAffine &matrix)
 行列加算
 
GX_FORCE_INLINE const GxMatrixAffinemulMatrix (const GxMatrixAffine &matrix)
 行列乗算
 
GX_FORCE_INLINE const GxMatrixAffinemulRotateX (f32 radian)
 X軸回転乗算
 
GX_FORCE_INLINE const GxMatrixAffinemulRotateY (f32 radian)
 Y軸回転乗算
 
GX_FORCE_INLINE const GxMatrixAffinemulRotateZ (f32 radian)
 Z軸回転乗算
 
GX_FORCE_INLINE const GxMatrixAffinemulQuaternionFront (const GxQuaternion &quaternion)
 クォータニオンによる回転乗算(前から乗算)
 
GX_FORCE_INLINE const GxMatrixAffinemulQuaternionBack (const GxQuaternion &quaternion)
 クォータニオンによる回転乗算(後ろから乗算)
 
GX_FORCE_INLINE void setScaleQuaternion (const GxVector3 &scale, const GxQuaternion &quaternion)
 スケール行列を設定し、クォータニオンによる回転乗算(後ろから乗算)を行う
 
GX_FORCE_INLINE const GxMatrixAffinemulTranslate (const GxVector3 &vector)
 平行移動乗算
 
GX_FORCE_INLINE const GxMatrixAffinemulTranslate (f32 x, f32 y, f32 z)
 平行移動乗算
 
GX_FORCE_INLINE const GxMatrixAffinemulScale (const GxVector3 &vector)
 スケール乗算
 
GX_FORCE_INLINE const GxMatrixAffinemulScale (f32 x, f32 y, f32 z)
 スケール乗算
 
GX_FORCE_INLINE const GxMatrixAffineinverse (void)
 逆行列にする
 
GX_FORCE_INLINE const GxMatrixAffinetranspose (void)
 転置する
 
GX_FORCE_INLINE void setZero (void)
 0を設定
 

Public Attributes

メンバ変数
f32 _m [4][4]
 
 

定義

static const GxMatrixAffine ZERO
 0行列
 
static const GxMatrixAffine IDENTITY
 単位行列
 
struct GxMatrix44
 
struct GxMatrixAffineGpu
 

演算子

GX_FORCE_INLINE const GxMatrixAffine operator* (const GxMatrixAffine &matrix, f32 scalar)
 スカラ乗算
 
GX_FORCE_INLINE const GxMatrixAffine operator/ (const GxMatrixAffine &matrix, f32 scalar)
 スカラ除算
 
GX_FORCE_INLINE const GxMatrixAffine operator+ (const GxMatrixAffine &matrix0, const GxMatrixAffine &matrix1)
 行列加算
 
GX_FORCE_INLINE const GxMatrixAffine operator* (const GxMatrixAffine &matrix0, const GxMatrixAffine &matrix1)
 行列乗算
 
GX_FORCE_INLINE GxMatrixAffineoperator= (const GxMatrixAffine &matrix)
 代入
 
GX_FORCE_INLINE GxMatrixAffineoperator*= (f32 scalar)
 スカラ乗算代入
 
GX_FORCE_INLINE GxMatrixAffineoperator/= (f32 scalar)
 スカラ除算代入
 
GX_FORCE_INLINE GxMatrixAffineoperator+= (const GxMatrixAffine &matrix)
 行列加算代入
 
GX_FORCE_INLINE GxMatrixAffineoperator*= (const GxMatrixAffine &matrix)
 行列乗算代入
 
GX_FORCE_INLINE b32 operator== (const GxMatrixAffine &matrix)
 一致
 
GX_FORCE_INLINE b32 operator!= (const GxMatrixAffine &matrix)
 不一致
 

アクセサ

GX_FORCE_INLINE void setIdentity (void)
 単位行列に設定
 
GX_FORCE_INLINE void setRotateX (f32 sinValue, f32 cosValue)
 回転行列を設定(X軸回転)
 
GX_FORCE_INLINE void setRotateX (f32 radian)
 回転行列を設定(X軸回転)
 
GX_FORCE_INLINE void setRotateY (f32 sinValue, f32 cosValue)
 回転行列を設定(Y軸回転)
 
GX_FORCE_INLINE void setRotateY (f32 radian)
 回転行列を設定(Y軸回転)
 
GX_FORCE_INLINE void setRotateZ (f32 sinValue, f32 cosValue)
 回転行列を設定(Z軸回転)
 
GX_FORCE_INLINE void setRotateZ (f32 radian)
 回転行列を設定(Z軸回転)
 
GX_FORCE_INLINE GxVector3 getRotateXYZ (void) const
 XYZ軸回転角を取得
 
GX_FORCE_INLINE void setRotateXYZ (f32 x, f32 y, f32 z)
 回転行列を設定(XYZ軸回転)
 
GX_FORCE_INLINE GxVector3 getRotateXZY (void) const
 XZY軸回転角を取得
 
GX_FORCE_INLINE void setRotateXZY (f32 x, f32 y, f32 z)
 回転行列を設定(XZY軸回転)
 
GX_FORCE_INLINE GxVector3 getRotateYXZ (void) const
 YXZ軸回転角を取得
 
GX_FORCE_INLINE void setRotateYXZ (f32 x, f32 y, f32 z)
 回転行列を設定(YXZ軸回転)
 
GX_FORCE_INLINE GxVector3 getRotateYZX (void) const
 YZX軸回転角を取得
 
GX_FORCE_INLINE void setRotateYZX (f32 x, f32 y, f32 z)
 回転行列を設定(YZX軸回転)
 
GX_FORCE_INLINE GxVector3 getRotateZXY (void) const
 ZXY軸回転角を取得
 
GX_FORCE_INLINE void setRotateZXY (f32 x, f32 y, f32 z)
 回転行列を設定(ZXY軸回転)
 
GX_FORCE_INLINE GxVector3 getRotateZYX (void) const
 ZYX軸回転角を取得
 
GX_FORCE_INLINE void setRotateZYX (f32 x, f32 y, f32 z)
 回転行列を設定(ZYX軸回転)
 
GX_FORCE_INLINE void setTranslate (const GxVector3 &vector)
 平行移動行列を設定
 
GX_FORCE_INLINE void setTranslate (f32 x, f32 y, f32 z)
 平行移動行列を設定
 
GX_FORCE_INLINE const GxVector3getPosition (void) const
 平行移動量を取得
 
GX_FORCE_INLINE const GxVector3getXAxis (void) const
 平行移動量を取得
 
GX_FORCE_INLINE const GxVector3getYAxis (void) const
 平行移動量を取得
 
GX_FORCE_INLINE const GxVector3getZAxis (void) const
 平行移動量を取得
 
GX_FORCE_INLINE void setPosition (const GxVector3 &position)
 平行移動量のみを設定
 
GX_FORCE_INLINE void setPosition (f32 x, f32 y, f32 z)
 平行移動量のみを設定
 
GX_FORCE_INLINE GxVector3 getScale (void) const
 スケールを取得
 
GX_FORCE_INLINE void setScale (const GxVector3 &vector)
 スケール行列を設定
 
GX_FORCE_INLINE void setScale (f32 x, f32 y, f32 z)
 スケール行列を設定
 
GX_FORCE_INLINE void setRotateAxis (const GxVector3 &vector, f32 radian)
 回転行列を設定
 
GX_FORCE_INLINE void setRotate (const GxQuaternion &quaternion)
 回転行列を設定
 
GX_FORCE_INLINE const GxVector4getRow (u32 row) const
 行を取得
 
GX_FORCE_INLINE const f32 * getRowPtr (u32 row) const
 行を取得
 
GX_FORCE_INLINE void setRow (u32 row, const GxVector4 &vector)
 行を設定
 
GX_FORCE_INLINE void setRow (u32 row, const GxVector3 &vector)
 行を設定
 
GX_FORCE_INLINE GxVector4 getColumn (u32 column) const
 列を取得
 
GX_FORCE_INLINE void setColumn (u32 column, const GxVector4 &vector)
 列を設定
 
GX_FORCE_INLINE f32 getValue (u32 row, u32 column) const
 値を取得
 
GX_FORCE_INLINE void setValue (u32 row, u32 column, f32 value)
 値を設定
 
GX_FORCE_INLINE f32 & getReference (u32 row, u32 column)
 参照を取得
 
GX_FORCE_INLINE const f32 & getReference (u32 row, u32 column) const
 参照を取得
 
void setLookAtRH (const GxVector3 &eyePosition, const GxVector3 &atPosition, const GxVector3 &up)
 右手座標系・視点行列を設定
 
void setLookAtLH (const GxVector3 &eyePosition, const GxVector3 &atPosition, const GxVector3 &up)
 左手座標系・視点行列を設定
 
GX_FORCE_INLINE f32 getDeterminant (void) const
 行列式の値を取得
 
GX_FORCE_INLINE GxMatrixAffine getInverse (void) const
 逆行列を取得
 
GX_FORCE_INLINE GxMatrixAffine getTranspose (void) const
 転置行列を取得
 
GX_FORCE_INLINE GxMatrixAffine getNormalizeAxes (void) const
 位置以外の各軸を正規化したものを取得
 
static GxMatrixAffine getMatrix (AXIS axis0, const GxVector3 &vector0, AXIS axis1, const GxVector3 &vector1)
 2つの軸とベクトルから行列を取得
 
static GX_FORCE_INLINE const GxMatrixAffinegetMulScalar (GxMatrixAffine &dst, const GxMatrixAffine &matrix, f32 scalar)
 スカラ乗算を取得
 
static GX_FORCE_INLINE const GxMatrixAffinegetDivScalar (GxMatrixAffine &dst, const GxMatrixAffine &matrix, f32 scalar)
 スカラ除算を取得
 
static GX_FORCE_INLINE const GxMatrixAffinegetAddMatrix (GxMatrixAffine &dst, const GxMatrixAffine &matrix0, const GxMatrixAffine &matrix1)
 行列加算を取得
 
static GX_FORCE_INLINE const GxMatrixAffinegetMulMatrix (GxMatrixAffine &dst, const GxMatrixAffine &matrix0, const GxMatrixAffine &matrix1)
 行列乗算を取得
 
static GX_FORCE_INLINE const GxMatrixAffineGpugetMulMatrix (GxMatrixAffineGpu &dst, const GxMatrixAffine &matrix0, const GxMatrixAffine &matrix1)
 行列乗算を取得
 
static GX_FORCE_INLINE const GxMatrixAffinegetInverse (GxMatrixAffine &dst, const GxMatrixAffine &matrix)
 逆行列を取得
 
static GX_FORCE_INLINE const GxMatrixAffinegetTranspose (GxMatrixAffine &dst, const GxMatrixAffine &matrix)
 転置行列を取得
 
static GX_FORCE_INLINE void getFastMulMatrix (GxMatrixAffine &dst, const GxMatrixAffine &matrix0, const GxMatrixAffine &matrix1)
 高速版。dst と matrix0, matrix1 は重なってなならない。アドレスは simd 用にアライメントされななければならない。
 
static GX_FORCE_INLINE b32 isSimdAlignment (const GxMatrixAffine &matrix)
 simd 用にアライメントされているか調べる
 

Additional Inherited Members

- Static Public Member Functions inherited from GxStructBase
static GxRtti__getStaticRtti (void)
 

Detailed Description

アフィン変換行列(行優先)

Constructor & Destructor Documentation

◆ GxMatrixAffine() [1/7]

GX_INLINE GxMatrixAffine::GxMatrixAffine ( INIT initType)

コンストラクタ(引数のタイプで要素を初期化する)

Parameters
initType[in] 初期化タイプ
Here is the call graph for this function:

◆ GxMatrixAffine() [2/7]

GX_INLINE GxMatrixAffine::GxMatrixAffine ( const GxQuaternion & quaternion,
const GxVector3 & position )

コンストラクタ

Parameters
quaternion[in] 回転
position[in] 位置
Here is the call graph for this function:

◆ GxMatrixAffine() [3/7]

GX_INLINE GxMatrixAffine::GxMatrixAffine ( const GxQuaternion & quaternion)

コンストラクタ

Parameters
quaternion[in] 回転
Here is the call graph for this function:

◆ GxMatrixAffine() [4/7]

GX_INLINE GxMatrixAffine::GxMatrixAffine ( const GxVector3 & position)

コンストラクタ

Parameters
position[in] 位置
Here is the call graph for this function:

◆ GxMatrixAffine() [5/7]

GX_INLINE GxMatrixAffine::GxMatrixAffine ( const GxMatrix44 & matrix)

コンストラクタ

Parameters
matrix[in] 行列

◆ GxMatrixAffine() [6/7]

GX_INLINE GxMatrixAffine::GxMatrixAffine ( const GxVector3 & position,
const GxMatrix33 & orientation )

コンストラクタ

Parameters
position[in] 位置
orientation[in] 姿勢記述マトリクス

◆ GxMatrixAffine() [7/7]

GX_INLINE GxMatrixAffine::GxMatrixAffine ( const GxMatrixAffine & matrix)

コピーコンストラクタ

Parameters
matrix[in] 行列

Member Function Documentation

◆ addMatrix()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::addMatrix ( const GxMatrixAffine & matrix)

行列加算

Parameters
matrix[in] 行列
Returns
自身の参照
Here is the caller graph for this function:

◆ divScalar()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::divScalar ( f32 scalar)

スカラ除算

Parameters
scalar[in] スカラ
Returns
自身の参照
Here is the caller graph for this function:

◆ getAddMatrix()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::getAddMatrix ( GxMatrixAffine & dst,
const GxMatrixAffine & matrix0,
const GxMatrixAffine & matrix1 )
static

行列加算を取得

Parameters
dst[out] 出力先
matrix0[in] 行列
matrix1[in] 行列
Returns
dstの参照

◆ getColumn()

GxVector4 GxMatrixAffine::getColumn ( u32 column) const

列を取得

Parameters
column[in] 列番号
Returns
列の値

◆ getDeterminant()

GX_FORCE_INLINE f32 GxMatrixAffine::getDeterminant ( void ) const

行列式の値を取得

Returns
行列式の値
Here is the caller graph for this function:

◆ getDivScalar()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::getDivScalar ( GxMatrixAffine & dst,
const GxMatrixAffine & matrix,
f32 scalar )
static

スカラ除算を取得

Parameters
dst[out] 出力先
matrix[in] 行列
scalar[in] スカラ
Returns
dstの参照

◆ getFastMulMatrix()

GX_FORCE_INLINE void GxMatrixAffine::getFastMulMatrix ( GxMatrixAffine & dst,
const GxMatrixAffine & matrix0,
const GxMatrixAffine & matrix1 )
static

高速版。dst と matrix0, matrix1 は重なってなならない。アドレスは simd 用にアライメントされななければならない。

Parameters
dst[out] 出力先。simd 命令用にアライメントされている必要がある。matrix0, matrix1 は同じ領域になってはならない。4要素目は計算される場合がある。
matrix0[in] 行列。simd 命令用にアライメントされている必要がある。
matrix1[in] 行列。simd 命令用にアライメントされている必要がある。

◆ getInverse() [1/2]

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::getInverse ( GxMatrixAffine & dst,
const GxMatrixAffine & matrix )
static

逆行列を取得

Parameters
dst[out] 出力先
matrix[in] 行列
Returns
dstの参照
Here is the call graph for this function:

◆ getInverse() [2/2]

GX_FORCE_INLINE GxMatrixAffine GxMatrixAffine::getInverse ( void ) const

逆行列を取得

Returns
逆行列
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getMatrix()

GxMatrixAffine GxMatrixAffine::getMatrix ( AXIS axis0,
const GxVector3 & vector0,
AXIS axis1,
const GxVector3 & vector1 )
static

2つの軸とベクトルから行列を取得

Parameters
axis0[in] 軸0
vector0[in] ベクトル0
axis1[in] 軸1
vector1[in] ベクトル1
Returns
マトリクス
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getMulMatrix() [1/2]

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::getMulMatrix ( GxMatrixAffine & dst,
const GxMatrixAffine & matrix0,
const GxMatrixAffine & matrix1 )
static

行列乗算を取得

Parameters
dst[out] 出力先
matrix0[in] 行列
matrix1[in] 行列
Returns
dstの参照
Here is the caller graph for this function:

◆ getMulMatrix() [2/2]

GX_FORCE_INLINE const GxMatrixAffineGpu & GxMatrixAffine::getMulMatrix ( GxMatrixAffineGpu & dst,
const GxMatrixAffine & matrix0,
const GxMatrixAffine & matrix1 )
static

行列乗算を取得

Parameters
dst[out] 出力先
matrix0[in] 行列
matrix1[in] 行列
Returns
dstの参照

◆ getMulScalar()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::getMulScalar ( GxMatrixAffine & dst,
const GxMatrixAffine & matrix,
f32 scalar )
static

スカラ乗算を取得

Parameters
dst[out] 出力先
matrix[in] 行列
scalar[in] スカラ
Returns
dstの参照

◆ getNormalizeAxes()

GX_FORCE_INLINE GxMatrixAffine GxMatrixAffine::getNormalizeAxes ( void ) const

位置以外の各軸を正規化したものを取得

Returns
位置以外の各軸を正規化したもの
Here is the call graph for this function:

◆ getReference() [1/2]

f32 & GxMatrixAffine::getReference ( u32 row,
u32 column )

参照を取得

Parameters
row[in] 行番号
column[in] 列番号
Returns
参照

◆ getReference() [2/2]

const f32 & GxMatrixAffine::getReference ( u32 row,
u32 column ) const

参照を取得

Parameters
row[in] 行番号
column[in] 列番号
Returns
参照

◆ getRotateXYZ()

GX_FORCE_INLINE GxVector3 GxMatrixAffine::getRotateXYZ ( void ) const

XYZ軸回転角を取得

Returns
XYZ回転の回転角
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getRotateXZY()

GX_FORCE_INLINE GxVector3 GxMatrixAffine::getRotateXZY ( void ) const

XZY軸回転角を取得

Returns
XZY回転の回転角
Here is the call graph for this function:

◆ getRotateYXZ()

GX_FORCE_INLINE GxVector3 GxMatrixAffine::getRotateYXZ ( void ) const

YXZ軸回転角を取得

Returns
YXZ回転の回転角
Here is the call graph for this function:

◆ getRotateYZX()

GX_FORCE_INLINE GxVector3 GxMatrixAffine::getRotateYZX ( void ) const

YZX軸回転角を取得

Returns
YZX回転の回転角
Here is the call graph for this function:

◆ getRotateZXY()

GX_FORCE_INLINE GxVector3 GxMatrixAffine::getRotateZXY ( void ) const

ZXY軸回転角を取得

Returns
ZXY回転の回転角
Here is the call graph for this function:

◆ getRotateZYX()

GX_FORCE_INLINE GxVector3 GxMatrixAffine::getRotateZYX ( void ) const

ZYX軸回転角を取得

Returns
ZYX回転の回転角
Here is the call graph for this function:

◆ getRow()

const GxVector4 & GxMatrixAffine::getRow ( u32 row) const

行を取得

Parameters
row[in] 行番号
Returns
行の値
Here is the caller graph for this function:

◆ getRowPtr()

GX_FORCE_INLINE const f32 * GxMatrixAffine::getRowPtr ( u32 row) const

行を取得

Parameters
row[in] 行番号
Returns
行のアドレス

◆ getTranspose() [1/2]

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::getTranspose ( GxMatrixAffine & dst,
const GxMatrixAffine & matrix )
static

転置行列を取得

Parameters
dst[out] 出力先
matrix[in] 行列
Returns
dstの参照

◆ getTranspose() [2/2]

GX_FORCE_INLINE GxMatrixAffine GxMatrixAffine::getTranspose ( void ) const

転置行列を取得

Returns
転置行列
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getValue()

f32 GxMatrixAffine::getValue ( u32 row,
u32 column ) const

値を取得

Parameters
row[in] 行番号
column[in] 列番号
Returns
Here is the caller graph for this function:

◆ initialize()

GX_FORCE_INLINE void GxMatrixAffine::initialize ( const GxQuaternion & quaternion,
const GxVector3 & position )

初期化

Parameters
quaternion[in] 回転
position[in] 位置
Here is the call graph for this function:

◆ inverse()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::inverse ( void )

逆行列にする

Returns
自身の参照
Here is the call graph for this function:

◆ isSimdAlignment()

GX_FORCE_INLINE b32 GxMatrixAffine::isSimdAlignment ( const GxMatrixAffine & matrix)
static

simd 用にアライメントされているか調べる

Parameters
matrix[in] 行列
Returns
アライメントされていた場合はtrue

◆ mulMatrix()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::mulMatrix ( const GxMatrixAffine & matrix)

行列乗算

Parameters
matrix[in] 行列
Returns
自身の参照
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mulQuaternionBack()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::mulQuaternionBack ( const GxQuaternion & quaternion)

クォータニオンによる回転乗算(後ろから乗算)

Parameters
quaternion[in] クォータニオン
Returns
自身の参照
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mulQuaternionFront()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::mulQuaternionFront ( const GxQuaternion & quaternion)

クォータニオンによる回転乗算(前から乗算)

Parameters
quaternion[in] クォータニオン
Returns
自身の参照
Here is the call graph for this function:

◆ mulRotateX()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::mulRotateX ( f32 radian)

X軸回転乗算

Parameters
radian[in] X軸回転量
Returns
自身の参照
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mulRotateY()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::mulRotateY ( f32 radian)

Y軸回転乗算

Parameters
radian[in] Y軸回転量
Returns
自身の参照
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mulRotateZ()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::mulRotateZ ( f32 radian)

Z軸回転乗算

Parameters
radian[in] Z軸回転量
Returns
自身の参照
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mulScalar()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::mulScalar ( f32 scalar)

スカラ乗算

Parameters
scalar[in] スカラ
Returns
自身の参照
Here is the caller graph for this function:

◆ mulScale() [1/2]

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::mulScale ( const GxVector3 & vector)

スケール乗算

Parameters
vector[in] スケール
Returns
自身の参照
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mulScale() [2/2]

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::mulScale ( f32 x,
f32 y,
f32 z )

スケール乗算

Parameters
x[in] スケールX
y[in] スケールY
z[in] スケールZ
Returns
自身の参照
Here is the call graph for this function:

◆ mulTranslate() [1/2]

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::mulTranslate ( const GxVector3 & vector)

平行移動乗算

Parameters
vector[in] 平行移動量
Returns
自身の参照
Here is the call graph for this function:
Here is the caller graph for this function:

◆ mulTranslate() [2/2]

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::mulTranslate ( f32 x,
f32 y,
f32 z )

平行移動乗算

Parameters
x[in] 平行移動量X
y[in] 平行移動量Y
z[in] 平行移動量Z
Returns
自身の参照
Here is the call graph for this function:

◆ operator!=()

GX_FORCE_INLINE b32 GxMatrixAffine::operator!= ( const GxMatrixAffine & matrix)

不一致

Parameters
matrix[in] 行列
Returns
不一致ならtrue

◆ operator*=() [1/2]

GX_FORCE_INLINE GxMatrixAffine & GxMatrixAffine::operator*= ( const GxMatrixAffine & matrix)

行列乗算代入

Parameters
matrix[in] 行列
Returns
自身の参照
Here is the call graph for this function:

◆ operator*=() [2/2]

GX_FORCE_INLINE GxMatrixAffine & GxMatrixAffine::operator*= ( f32 scalar)

スカラ乗算代入

Parameters
scalar[in] スカラ
Returns
自身の参照
Here is the call graph for this function:

◆ operator+=()

GX_FORCE_INLINE GxMatrixAffine & GxMatrixAffine::operator+= ( const GxMatrixAffine & matrix)

行列加算代入

Parameters
matrix[in] 行列
Returns
自身の参照
Here is the call graph for this function:

◆ operator/=()

GX_FORCE_INLINE GxMatrixAffine & GxMatrixAffine::operator/= ( f32 scalar)

スカラ除算代入

Parameters
scalar[in] スカラ
Returns
自身の参照
Here is the call graph for this function:

◆ operator=()

GX_FORCE_INLINE GxMatrixAffine & GxMatrixAffine::operator= ( const GxMatrixAffine & matrix)

代入

Parameters
matrix[in] 行列
Returns
自身の参照

◆ operator==()

GX_FORCE_INLINE b32 GxMatrixAffine::operator== ( const GxMatrixAffine & matrix)

一致

Parameters
matrix[in] 行列
Returns
一致ならtrue

◆ setColumn()

void GxMatrixAffine::setColumn ( u32 column,
const GxVector4 & vector )

列を設定

Parameters
column[in] 列番号
vector[in] 列の値

◆ setLookAtLH()

void GxMatrixAffine::setLookAtLH ( const GxVector3 & eyePosition,
const GxVector3 & atPosition,
const GxVector3 & up )

左手座標系・視点行列を設定

Parameters
eyePosition[in] 視点
atPosition[in] 注視点
up[in] 上ベクトル
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setLookAtRH()

void GxMatrixAffine::setLookAtRH ( const GxVector3 & eyePosition,
const GxVector3 & atPosition,
const GxVector3 & up )

右手座標系・視点行列を設定

Parameters
eyePosition[in] 視点
atPosition[in] 注視点
up[in] 上ベクトル
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setPosition() [1/2]

GX_FORCE_INLINE void GxMatrixAffine::setPosition ( const GxVector3 & position)

平行移動量のみを設定

Parameters
position[in] 平行移動量
Here is the caller graph for this function:

◆ setPosition() [2/2]

GX_FORCE_INLINE void GxMatrixAffine::setPosition ( f32 x,
f32 y,
f32 z )

平行移動量のみを設定

Parameters
x[in] 平行移動量X
y[in] 平行移動量Y
z[in] 平行移動量Z

◆ setRotate()

GX_INLINE void GxMatrixAffine::setRotate ( const GxQuaternion & quaternion)

回転行列を設定

Parameters
quaternion[in] クォータニオン
Here is the caller graph for this function:

◆ setRotateAxis()

GX_FORCE_INLINE void GxMatrixAffine::setRotateAxis ( const GxVector3 & vector,
f32 radian )

回転行列を設定

Parameters
vector[in] 回転軸
radian[in] 回転角
Here is the call graph for this function:

◆ setRotateX()

GX_FORCE_INLINE void GxMatrixAffine::setRotateX ( f32 sinValue,
f32 cosValue )

回転行列を設定(X軸回転)

Parameters
sinValue[in] sin(rad)の値
cosValue[in] cos(rad)の値
Here is the caller graph for this function:

◆ setRotateY()

GX_FORCE_INLINE void GxMatrixAffine::setRotateY ( f32 sinValue,
f32 cosValue )

回転行列を設定(Y軸回転)

Parameters
sinValue[in] sin(rad)の値
cosValue[in] cos(rad)の値
Here is the caller graph for this function:

◆ setRotateZ()

GX_FORCE_INLINE void GxMatrixAffine::setRotateZ ( f32 sinValue,
f32 cosValue )

回転行列を設定(Z軸回転)

Parameters
sinValue[in] sin(rad)の値
cosValue[in] cos(rad)の値
Here is the caller graph for this function:

◆ setRow() [1/2]

void GxMatrixAffine::setRow ( u32 row,
const GxVector3 & vector )

行を設定

Parameters
row[in] 行番号
vector[in] 行の値

◆ setRow() [2/2]

void GxMatrixAffine::setRow ( u32 row,
const GxVector4 & vector )

行を設定

Parameters
row[in] 行番号
vector[in] 行の値
Here is the caller graph for this function:

◆ setScale() [1/2]

GX_FORCE_INLINE void GxMatrixAffine::setScale ( const GxVector3 & vector)

スケール行列を設定

Parameters
vector[in] スケール
Here is the caller graph for this function:

◆ setScale() [2/2]

GX_FORCE_INLINE void GxMatrixAffine::setScale ( f32 x,
f32 y,
f32 z )

スケール行列を設定

Parameters
x[in] スケールX
y[in] スケールY
z[in] スケールZ

◆ setScaleQuaternion()

GX_FORCE_INLINE void GxMatrixAffine::setScaleQuaternion ( const GxVector3 & scale,
const GxQuaternion & quaternion )

スケール行列を設定し、クォータニオンによる回転乗算(後ろから乗算)を行う

Parameters
scale[in] スケール
quaternion[in] クォータニオン
Here is the call graph for this function:

◆ setTranslate() [1/2]

GX_FORCE_INLINE void GxMatrixAffine::setTranslate ( const GxVector3 & vector)

平行移動行列を設定

Parameters
vector[in] 平行移動量
Here is the caller graph for this function:

◆ setTranslate() [2/2]

GX_FORCE_INLINE void GxMatrixAffine::setTranslate ( f32 x,
f32 y,
f32 z )

平行移動行列を設定

Parameters
x[in] 平行移動量X
y[in] 平行移動量Y
z[in] 平行移動量Z

◆ setValue()

void GxMatrixAffine::setValue ( u32 row,
u32 column,
f32 value )

値を設定

Parameters
row[in] 行番号
column[in] 列番号
value[in] 値

◆ transpose()

GX_FORCE_INLINE const GxMatrixAffine & GxMatrixAffine::transpose ( void )

転置する

Returns
自身の参照

Friends And Related Symbol Documentation

◆ operator* [1/2]

GX_FORCE_INLINE const GxMatrixAffine operator* ( const GxMatrixAffine & matrix,
f32 scalar )
friend

スカラ乗算

Parameters
matrix[in] 行列
scalar[in] スカラ
Returns
演算結果

◆ operator* [2/2]

GX_FORCE_INLINE const GxMatrixAffine operator* ( const GxMatrixAffine & matrix0,
const GxMatrixAffine & matrix1 )
friend

行列乗算

Parameters
matrix0[in] 行列
matrix1[in] 行列
Returns
演算結果

◆ operator+

GX_FORCE_INLINE const GxMatrixAffine operator+ ( const GxMatrixAffine & matrix0,
const GxMatrixAffine & matrix1 )
friend

行列加算

Parameters
matrix0[in] 行列
matrix1[in] 行列
Returns
演算結果

◆ operator/

GX_FORCE_INLINE const GxMatrixAffine operator/ ( const GxMatrixAffine & matrix,
f32 scalar )
friend

スカラ除算

Parameters
matrix[in] 行列
scalar[in] スカラ
Returns
演算結果

The documentation for this struct was generated from the following files: