Structure D3DXMATRIX (D3dx9math.h)
Notes
La bibliothèque utilitaire D3DX est déconseillée. Nous vous recommandons d’utiliser DirectXMath à la place.
Matrice 4x4 qui contient des méthodes et des surcharges d’opérateurs.
Syntaxe
typedef struct D3DXMATRIX {
FLOAT _ij;
} D3DXMATRIX, *LPD3DXMATRIX;
Membres
-
_Ij
-
Type : FLOAT
-
Composant (i, j) de la matrice, où i est le numéro de ligne et j le numéro de colonne. Par exemple, _34 signifie le même que [a₃₄], le composant dans la troisième ligne et la quatrième colonne.
Notes
Les programmeurs C ne peuvent pas utiliser la structure D3DXMATRIX, ils doivent utiliser la structure D3DMATRIX . Les programmeurs C++ peuvent tirer parti des constructeurs surchargés et des opérateurs d’affectation, unaires et binaires (y compris l’égalité).
Dans D3DX, l’élément _34 d’une matrice de projection ne peut pas être un nombre négatif. Si votre application doit utiliser une valeur négative à cet emplacement, elle doit mettre à l’échelle l’ensemble de la matrice de projection de -1 à la place.
Extensions D3DXMATRIX
D3DXMATRIX a les extensions C++ suivantes.
#ifdef __cplusplus
typedef struct D3DXMATRIX : public D3DMATRIX
{
public:
D3DXMATRIX() {};
D3DXMATRIX( CONST FLOAT * );
D3DXMATRIX( CONST D3DMATRIX& );
D3DXMATRIX( CONST D3DXFLOAT16 * );
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;
#else //!__cplusplus
typedef struct _D3DMATRIX D3DXMATRIX, *LPD3DXMATRIX;
#endif //!__cplusplus
Spécifications
Condition requise | Valeur |
---|---|
En-tête |
|
Voir aussi