00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00024
00025 #ifndef SFML_SPRITE_HPP
00026 #define SFML_SPRITE_HPP
00027
00029
00031 #include <SFML/Graphics/Drawable.hpp>
00032 #include <SFML/Graphics/Rect.hpp>
00033
00034
00035 namespace sf
00036 {
00037 class Image;
00038
00043 class SFML_API Sprite : public Drawable
00044 {
00045 public :
00046
00051 Sprite();
00052
00065 Sprite(const Image& Img, float Left = 0.f, float Top = 0.f, float ScaleX = 1.f, float ScaleY = 1.f, float Rotation = 0.f, const Color& Col = Color(255, 255, 255, 255));
00066
00073 void SetImage(const Image& Img);
00074
00082 void SetSubRect(const IntRect& SubRect);
00083
00092 void Resize(float Width, float Height);
00093
00100 void FlipX(bool Flipped);
00101
00108 void FlipY(bool Flipped);
00109
00116 const Image* GetImage() const;
00117
00124 const IntRect& GetSubRect() const;
00125
00132 float GetWidth() const;
00133
00140 float GetHeight() const;
00141
00151 Color GetPixel(unsigned int X, unsigned int Y) const;
00152
00153 protected :
00154
00159 virtual void Render(const RenderWindow& Window) const;
00160
00161 private :
00162
00164
00166 const Image* myImage;
00167 IntRect mySubRect;
00168 bool myIsFlippedX;
00169 bool myIsFlippedY;
00170 };
00171
00172 }
00173
00174
00175 #endif // SFML_SPRITE_HPP