Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

include/ZE_ZImage.h

Go to the documentation of this file.
00001 /*******************************************************************************
00002          This file is Part of the ZEngine Library for SDL Game Development.
00003                       Copyright (C) 2002 ConceptOfZero.net
00004 
00005              Licensed under the BSD License, see licensing.txt.
00006 
00007     The maintainer of this library is James Turk (jturk@conceptofzero.net) 
00008          and the home of this Library is http://www.conceptofzero.net/
00009 *******************************************************************************/
00010 
00024 #ifndef __ze_zimage_h__
00025 #define __ze_zimage_h__
00026 
00027 #include "ZE_ZObject.h"
00028 
00029 namespace ZE
00030 {
00031 
00037 class ZImage : public ZObject
00038 {
00039     protected:
00041         GLfloat rTexMinX;
00043         GLfloat rTexMinY;
00045         GLfloat rTexMaxX;
00047         GLfloat rTexMaxY;
00049         SDL_Surface *rImage;
00051         unsigned int rTexID;
00053         unsigned int rWidth;
00055         unsigned int rHeight;
00056     
00057     public:
00058 
00064         ZImage();
00065 
00072         ZImage(string filename);
00073 
00080         ZImage(SDL_Surface *surface);
00081 
00093         ZImage(SDL_Surface *img, Sint16 x, Sint16 y, Sint16 w, Sint16 h);
00094 
00100         ~ZImage();
00101 
00103         //Opening and Closing//
00105 
00112         void Open(string filename);
00113 
00125         void OpenFromImage(SDL_Surface *img, Sint16 x, Sint16 y, Sint16 w, Sint16 h);
00126 
00133         void Attach(SDL_Surface *surface);
00134 
00140         void Release();
00141 
00143         //Graphics//
00145 
00154         void SetColorKey(Uint8 red, Uint8 green, Uint8 blue);
00155 
00163         void Flip(bool horizontal, bool vertical);
00164 
00172         void Stretch(float xFactor, float yFactor);
00173 
00181         void Resize(unsigned int width, unsigned int height);
00182 
00189         void Bind();
00190 
00198         void Draw(float x, float y);
00199 
00208         void DrawRotated(int x, int y, float angle);
00209 
00211         //Accessors//
00213 
00220         bool IsLoaded();
00221 
00227         SDL_Surface *Surface();
00228 
00235         int Width();
00236 
00243         int Height();
00244 };
00245 
00246 }
00247 
00248 #endif

Generated on Wed Dec 11 23:42:26 2002 for ZEngine by doxygen1.3-rc1