From d8d7963b9b658799b806d516bbd6b44c4baa28f8 Mon Sep 17 00:00:00 2001 From: chai Date: Wed, 24 Oct 2018 22:08:46 +0800 Subject: =?UTF-8?q?+=E7=B2=92=E5=AD=90=E7=B3=BB=E7=BB=9F=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/libjin/Graphics/je_graphic_single.h | 53 +++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 src/libjin/Graphics/je_graphic_single.h (limited to 'src/libjin/Graphics/je_graphic_single.h') diff --git a/src/libjin/Graphics/je_graphic_single.h b/src/libjin/Graphics/je_graphic_single.h new file mode 100644 index 0000000..ca2864b --- /dev/null +++ b/src/libjin/Graphics/je_graphic_single.h @@ -0,0 +1,53 @@ +#ifndef __JE_GRAPHIC_SINGLE_H +#define __JE_GRAPHIC_SINGLE_H + +#include "../math/je_quad.h" + +#include "je_graphic.h" + +namespace JinEngine +{ + namespace Graphics + { + // + // GraphicSingle + // |- Canvas + // |- Texture + // |- TextureFont + // + + /// + /// Single graphic, comparing to graphics batch, a single graphic need assign it's vertex and screen uv. + /// For example, a texture and canvas should be a graphic single. + /// + class GraphicSingle : public Graphic + { + public: + /// + /// + /// + GraphicSingle(const Bitmap* bitmap); + + /// + /// + /// + GraphicSingle(int w = 0, int h = 0); + + /// + /// Render graphic single with given coordinates. + /// + void render(int x, int y, float sx = 1, float sy = 1, float r = 0, float ox = 0, float oy = 0); + + /// + /// Render part of graphic single with given coordinates. + /// + void render(const Math::Quad& slice, int x, int y, float sx = 1, float sy = 1, float r = 0, float ox = 0, float oy = 0); + + private: + + }; + + } // namespace Graphics +} // namespace JinEngine + +#endif \ No newline at end of file -- cgit v1.1-26-g67d0