mirror of
https://github.com/copyrighttxt/watrbx-game-engine.git
synced 2026-09-05 05:07:48 +00:00
34 lines
795 B
C++
34 lines
795 B
C++
#ifndef __sgMatrix__
|
|
#define __sgMatrix__
|
|
|
|
class sgCore_API sgCMatrix
|
|
{
|
|
private:
|
|
sgFloat m_matrix[16];
|
|
sgFloat* m_temp_buffer;
|
|
public:
|
|
sgCMatrix();
|
|
sgCMatrix(const sgFloat*);
|
|
sgCMatrix(sgCMatrix&);
|
|
~sgCMatrix();
|
|
sgCMatrix& operator = (const sgCMatrix& );
|
|
|
|
bool SetMatrix(const sgCMatrix*);
|
|
|
|
const sgFloat* GetData();
|
|
const sgFloat* GetTransparentData();
|
|
|
|
void Identity();
|
|
|
|
void Transparent();
|
|
bool Inverse();
|
|
void Multiply(const sgCMatrix& MatrB);
|
|
void Translate(const SG_VECTOR& transVector);
|
|
void Rotate(const SG_POINT& axePoint, const SG_VECTOR& axeDir, sgFloat alpha_radians);
|
|
void VectorToZAxe(const SG_VECTOR& vect);
|
|
|
|
void ApplyMatrixToVector(SG_POINT& vectBegin, SG_VECTOR& vectDir) const;
|
|
void ApplyMatrixToPoint(SG_POINT& pnt) const;
|
|
};
|
|
|
|
#endif |