aboutsummaryrefslogtreecommitdiff
path: root/src/libjin/Graphics/Drawable.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libjin/Graphics/Drawable.cpp')
-rw-r--r--src/libjin/Graphics/Drawable.cpp77
1 files changed, 0 insertions, 77 deletions
diff --git a/src/libjin/Graphics/Drawable.cpp b/src/libjin/Graphics/Drawable.cpp
deleted file mode 100644
index cab6c50..0000000
--- a/src/libjin/Graphics/Drawable.cpp
+++ /dev/null
@@ -1,77 +0,0 @@
-#include "../modules.h"
-#if JIN_MODULES_RENDER
-
-#include "drawable.h"
-#include "../math/matrix.h"
-#include <stdlib.h>
-
-namespace jin
-{
-namespace graphics
-{
- Drawable::Drawable(int w, int h):texture(0), width(w), height(h), ancx(0), ancy(0), textCoord(0), vertCoord(0)
- {
- }
-
- Drawable::~Drawable()
- {
- glDeleteTextures(1, &texture);
- delete[] vertCoord;
- delete[] textCoord;
- }
-
- void Drawable::setVertices(float* v, float* t)
- {
- // render area
- if (vertCoord)
- delete[] vertCoord;
- vertCoord = v;
-
- // textrue
- if (textCoord)
- delete[] textCoord;
- textCoord = t;
- }
-
- void Drawable::setAnchor(int x, int y)
- {
- ancx = x;
- ancy = y;
- }
-
- void Drawable::draw(int x, int y, float sx, float sy, float r)
- {
- // Must set textCoord and vertCoord before renderring
- if (! textCoord||! vertCoord) return;
-
- static jin::math::Matrix t;
- t.setTransformation(x, y, r, sx, sy, ancx, ancy);
-
- glEnable(GL_TEXTURE_2D);
-
- glBindTexture(GL_TEXTURE_2D, texture);
-
- // push modle matrix
- glPushMatrix();
- glMultMatrixf((const GLfloat*)t.getElements());
-
- glEnableClientState(GL_VERTEX_ARRAY);
- glEnableClientState(GL_TEXTURE_COORD_ARRAY);
- glTexCoordPointer(2, GL_FLOAT, 0, textCoord);
- glVertexPointer(2, GL_FLOAT, 0, vertCoord);
- glDrawArrays(GL_QUADS, 0, 4);
- glDisableClientState(GL_TEXTURE_COORD_ARRAY);
- glDisableClientState(GL_VERTEX_ARRAY);
-
- // pop the model matrix
- glPopMatrix();
-
- // bind texture to default screen
- glBindTexture(GL_TEXTURE_2D, 0);
-
- glDisable(GL_TEXTURE_2D);
- }
-} // render
-} // jin
-
-#endif // JIN_MODULES_RENDER \ No newline at end of file