#pragma once
|
|
|
#include "akLinker.h"
|
|
namespace akSTL
|
{
|
class akSTL_DLLSPEC CakMatrix4x4
|
{
|
public:
|
CakMatrix4x4(void);
|
~CakMatrix4x4(void);
|
|
inline bool MatrixClear(); //¸ÅÆ®¸¯½º ¸®¼Â
|
inline bool SetMatrix(double *matrix); //¸ÅÆ®¸¯½º ¼¼ÆÃ
|
inline bool SetRotateH(double H); //ȸÀü ¸ÅÆ®¸®¸¯½º °ö¼À
|
inline bool SetRotateP(double P); //ȸÀü ¸ÅÆ®¸®¸¯½º °ö¼À
|
inline bool SetRotateR(double R); //ȸÀü ¸ÅÆ®¸®¸¯½º °ö¼À
|
inline bool SetTransform(double x, double y, double z); //À̵¿ ¸ÅÆ®¸®¸¯½º °ö¼À
|
inline bool MakeResult(double* x, double* y, double* z);//¸ÅÆ®¸¯½º Àû¿ë ÁÂÇ¥°ª »êÃâ
|
inline bool MakeResult(float* x, float* y, float* z);//¸ÅÆ®¸¯½º Àû¿ë ÁÂÇ¥°ª »êÃâ
|
inline void MatrixPrint(); //ÇöÀç ¸ÅÆ®¸¯½º Ãâ·Â
|
inline CakMatrix4x4& operator=(const CakMatrix4x4& matrix);
|
inline CakMatrix4x4& operator*(const CakMatrix4x4& matrix);
|
protected:
|
inline bool Multiplication(double* matrix); //ÇöÀç ¸ÅÆ®¸¯½º¿¡ ÀԷ°ª °ö¼À
|
|
public:
|
double m_Matrix[16];
|
|
|
private:
|
bool m_bSet; //ÃʱâȰ¡ µÇ¾îÀÖ´ÂÁö È®ÀÎ
|
|
};
|
}
|