D3DXMATRIX 構造体
D3DXMATRIX 構造体
行列を記述する。
構文
typedef struct D3DXMATRIX : public D3DMATRIX {
public:
D3DXMATRIX() {};
D3DXMATRIX( CONST FLOAT * );
D3DXMATRIX( CONST D3DMATRIX& );
D3DXMATRIX( FLOAT _11, FLOAT _12, FLOAT _13, FLOAT _14,
FLOAT _21, FLOAT _22, FLOAT _23, FLOAT _24,
FLOAT _31, FLOAT _32, FLOAT _33, FLOAT _34,
FLOAT _41, FLOAT _42, FLOAT _43, FLOAT _44 );
// access grants
FLOAT& operator () ( UINT Row, UINT Col );
FLOAT operator () ( UINT Row, UINT Col ) const;
// casting operators
operator FLOAT* ();
operator CONST FLOAT* () const;
// assignment operators
D3DXMATRIX& operator *= ( CONST D3DXMATRIX& );
D3DXMATRIX& operator += ( CONST D3DXMATRIX& );
D3DXMATRIX& operator -= ( CONST D3DXMATRIX& );
D3DXMATRIX& operator *= ( FLOAT );
D3DXMATRIX& operator /= ( FLOAT );
// unary operators
D3DXMATRIX operator + () const;
D3DXMATRIX operator - () const;
// binary operators
D3DXMATRIX operator * ( CONST D3DXMATRIX& ) const;
D3DXMATRIX operator + ( CONST D3DXMATRIX& ) const;
D3DXMATRIX operator - ( CONST D3DXMATRIX& ) const;
D3DXMATRIX operator * ( FLOAT ) const;
D3DXMATRIX operator / ( FLOAT ) const;
friend D3DXMATRIX operator * ( FLOAT, CONST D3DXMATRIX& );
BOOL operator == ( CONST D3DXMATRIX& ) const;
BOOL operator != ( CONST D3DXMATRIX& ) const;
} D3DXMATRIX, *LPD3DXMATRIX;
注意
この構造体は D3DMATRIX 構造体のメンバを継承する。C のプログラマは D3DXMATRIX 構造体を使えない。C のプログラマは D3DMATRIX 構造体を使う必要がある。
Direct3D エクステンション (D3DX) では、射影行列の _34 要素に負の値を設定できない。ここで負の値を使う必要がある場合は、代わりに射影行列全体を -1 でスケールする。
C++ プログラマは、D3DXMATRIX 拡張機能を使って、演算子のオーバーロード機能や型変換機能を利用できる。それは、オーバーロードされたコンストラクタ・代入演算子・単項演算子・2 項演算子 (等価演算子を含む) を実装する。
構造体の情報
ヘッダー | d3dx9math.h |
最低限のオペレーティング システム | Windows 98 |