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
00063 Sprite(const Image& Img, const Vector2f& Position = Vector2f(0, 0), const Vector2f& Scale = Vector2f(1, 1), float Rotation = 0.f, const Color& Col = Color(255, 255, 255, 255));
00064
00071 void SetImage(const Image& Img);
00072
00080 void SetSubRect(const IntRect& SubRect);
00081
00090 void Resize(float Width, float Height);
00091
00099 void Resize(const Vector2f& Size);
00100
00107 void FlipX(bool Flipped);
00108
00115 void FlipY(bool Flipped);
00116
00123 const Image* GetImage() const;
00124
00131 const IntRect& GetSubRect() const;
00132
00139 Vector2f GetSize() const;
00140
00150 Color GetPixel(unsigned int X, unsigned int Y) const;
00151
00152 protected :
00153
00158 virtual void Render(const RenderWindow& Window) const;
00159
00160 private :
00161
00163
00165 const Image* myImage;
00166 IntRect mySubRect;
00167 bool myIsFlippedX;
00168 bool myIsFlippedY;
00169 };
00170
00171 }
00172
00173
00174 #endif // SFML_SPRITE_HPP