Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00025
00028
00029 #ifndef THOR_BIGSPRITE_HPP
00030 #define THOR_BIGSPRITE_HPP
00031
00032 #include <Thor/Config.hpp>
00033
00034 #include <SFML/Graphics/Drawable.hpp>
00035 #include <SFML/Graphics/Transformable.hpp>
00036 #include <SFML/Graphics/Sprite.hpp>
00037
00038 #include <vector>
00039
00040
00041 namespace sf
00042 {
00043
00044 class RenderTarget;
00045 class RenderStates;
00046
00047 }
00048
00049
00050 namespace thor
00051 {
00052
00053 class BigTexture;
00054
00055
00058
00064 class THOR_API BigSprite : public sf::Drawable, public sf::Transformable
00065 {
00066
00067
00068 public:
00071 BigSprite();
00072
00076 explicit BigSprite(const BigTexture& texture);
00077
00080 void SetTexture(const BigTexture& texture);
00081
00084 void SetColor(const sf::Color& color);
00085
00088 sf::Color GetColor() const;
00089
00092 sf::FloatRect GetLocalBounds() const;
00093
00096 sf::FloatRect GetGlobalBounds() const;
00097
00098
00099
00100
00101 private:
00102
00103 virtual void Draw(sf::RenderTarget& target, sf::RenderStates states) const;
00104
00105
00106
00107
00108 private:
00109 std::vector<sf::Sprite> mSplitSprites;
00110 sf::Vector2f mSize;
00111 sf::Color mColor;
00112 };
00113
00115
00116 }
00117
00118 #endif // THOR_BIGSPRITE_HPP