D3DXVECTOR3
operator のオーバーロードおよび型キャストを含む 3 つの要素のベクトルを記述します。
typedef struct D3DXVECTOR3 {
FLOAT x;
FLOAT y;
FLOAT z;
} D3DXVECTOR3, *LPD3DXVECTOR3;
メンバ
- x
ベクトルの x 成分です。 - y
ベクトルの y 成分です。 - z
算出された z 成分を返します。
解説
D3DXVECTOR3 には次のような C++ 拡張機能があります。
D3DXVECTOR3 の拡張機能
#ifdef __cplusplus typedef struct D3DXVECTOR3 : public D3DVECTOR { public: D3DXVECTOR3() {}; D3DXVECTOR3( CONST FLOAT * ); D3DXVECTOR3( CONST D3DVECTOR& ); D3DXVECTOR3( CONST D3DXFLOAT16 * ); D3DXVECTOR3( FLOAT x, FLOAT y, FLOAT z ); // casting operator FLOAT* (); operator CONST FLOAT* () const; // assignment operators D3DXVECTOR3& operator += ( CONST D3DXVECTOR3& ); D3DXVECTOR3& operator -= ( CONST D3DXVECTOR3& ); D3DXVECTOR3& operator *= ( FLOAT ); D3DXVECTOR3& operator /= ( FLOAT ); // unary operators D3DXVECTOR3 operator + () const; D3DXVECTOR3 operator - () const; // binary operators D3DXVECTOR3 operator + ( CONST D3DXVECTOR3& ) const; D3DXVECTOR3 operator - ( CONST D3DXVECTOR3& ) const; D3DXVECTOR3 operator * ( FLOAT ) const; D3DXVECTOR3 operator / ( FLOAT ) const; friend D3DXVECTOR3 operator * ( FLOAT, CONST struct D3DXVECTOR3& ); BOOL operator == ( CONST D3DXVECTOR3& ) const; BOOL operator != ( CONST D3DXVECTOR3& ) const; } D3DXVECTOR3, *LPD3DXVECTOR3; #else //!__cplusplus typedef struct _D3DVECTOR D3DXVECTOR3, *LPD3DXVECTOR3; #endif //!__cplusplus typedef struct D3DXVECTOR3_16F { #ifdef __cplusplus public: D3DXVECTOR3_16F() {}; D3DXVECTOR3_16F( CONST FLOAT * ); D3DXVECTOR3_16F( CONST D3DVECTOR& ); D3DXVECTOR3_16F( CONST D3DXFLOAT16 * ); D3DXVECTOR3_16F( CONST D3DXFLOAT16 &x, CONST D3DXFLOAT16 &y, CONST D3DXFLOAT16 &z ); // casting operator D3DXFLOAT16* (); operator CONST D3DXFLOAT16* () const; // binary operators BOOL operator == ( CONST D3DXVECTOR3_16F& ) const; BOOL operator != ( CONST D3DXVECTOR3_16F& ) const; public: #endif //__cplusplus D3DXFLOAT16 x, y, z; } D3DXVECTOR3_16F, *LPD3DXVECTOR3_16F;
要件
ヘッダー: D3dx9math.h 宣言