summaryrefslogtreecommitdiff
path: root/source/modules/asura-core/graphics/matrix_stack.h
diff options
context:
space:
mode:
Diffstat (limited to 'source/modules/asura-core/graphics/matrix_stack.h')
-rw-r--r--source/modules/asura-core/graphics/matrix_stack.h58
1 files changed, 0 insertions, 58 deletions
diff --git a/source/modules/asura-core/graphics/matrix_stack.h b/source/modules/asura-core/graphics/matrix_stack.h
deleted file mode 100644
index ad32bb4..0000000
--- a/source/modules/asura-core/graphics/matrix_stack.h
+++ /dev/null
@@ -1,58 +0,0 @@
-#ifndef __ASURA_MATRIX_STACK_H__
-#define __ASURA_MATRIX_STACK_H__
-
-#include <asura-utils/type.h>
-#include <asura-utils/math/matrix44.h>
-#include <asura-utils/classes.h>
-
-namespace_begin(AsuraEngine)
-namespace_begin(Graphics)
-
-///
-/// ջľȡ
-///
-#define ASURA_MAX_MATRIX_STACK_DEPTH 32 // 2KB
-
-///
-/// ջ״ָ̬֮ǰ״̬ջеһstack[i]ֵstack[0]*..*stack[i-1]
-/// ֵһϵtransform
-///
-/// TODO: template<uint _capacity> MatrixStack
-///
-class MatrixStack
-{
-public:
-
- MatrixStack();
- ~MatrixStack();
-
- void LoadIdentity();
- bool Push();
- bool Pop();
-
- AEMath::Matrix44& GetTop();
- void GetTop(ASURA_OUT AEMath::Matrix44& mat44);
-
- void LoadMatrix(const AEMath::Matrix44& mat44);
- void MultMatrix(const AEMath::Matrix44& mat44);
-
- void Rotate(float angle);
- void Translate(float x, float y);
- void Scale(float x, float y);
-
- void Ortho(float l, float r, float b, float t, float n, float f);
-
- uint GetTopIndex();
- uint GetCapacity();
-
-private:
-
- AEMath::Matrix44 m_Stack[ASURA_MAX_MATRIX_STACK_DEPTH];
- uint8 top;
-
-};
-
-namespace_end
-namespace_end
-
-#endif \ No newline at end of file