www.pudn.com > Chesssource.rar > transform.h
#if !defined(_TRANSFORM_H_)
#define _TRANSFORM_H_
class cTransform
{
protected:
BOOL m_bBillboard;
float m_fXPos, m_fYPos, m_fZPos;
float m_fXRotation, m_fYRotation, m_fZRotation;
float m_fXScale, m_fYScale, m_fZScale;
D3DXMATRIX m_matWorld;
D3DXMATRIX m_matScale;
D3DXMATRIX m_matRotation;
D3DXMATRIX m_matTranslation;
D3DXMATRIX *m_matCombine1;
D3DXMATRIX *m_matCombine2;
public:
cTransform();
D3DXMATRIX *GetMatrix( cGraphics *pGraphics = NULL );
void SetCombineMatrix1( D3DXMATRIX *matMatrix = NULL );
void SetCombineMatrix2( D3DXMATRIX *matMatrix = NULL );
void Move( float fXPos, float fYPos, float fZPos );
void MoveRel( float fXAdd, float fYAdd, float fZAdd );
void Rotate( float fXRot, float fYRot, float fZRot );
void RotateRel( float fXAdd, float fYAdd, float fZAdd );
void Scale( float fXSca, float fYSca, float fZSca );
void ScaleRel( float fXAdd, float fYAdd, float fZAdd );
HRESULT UpdateMatrix( cGraphics *pGraphics = NULL );
void EnableBillboard( BOOL bEnable = TRUE );
float GetXPos();
float GetYPos();
float GetZPos();
float GetXRotation();
float GetYRotation();
float GetZRotation();
float GetXScale();
float GetYScale();
float GetZScale();
};
#endif