SUPER Space invader : Turbo edition DX - VS GOD 1.0.0
A simple space invader ripoff
rectangle.h
Go to the documentation of this file.
1
11#ifndef RECTANGLE_H
12#define RECTANGLE_H
13
14#include "shape.h"
15
16#include "../transition/itransitionable.h"
17
18namespace nsShape
19{
20
26{
27
28public:
39 };
40
50 Rectangle(const nsGraphics::Vec2D& firstPosition, const nsGraphics::Vec2D& secondPosition, const nsGraphics::RGBAcolor& fillColor,
52
63 Rectangle(const nsGraphics::Vec2D& position, const unsigned& width, const unsigned& height, const nsGraphics::RGBAcolor& fillColor,
65
70 virtual ~Rectangle() override = default;
71
72 virtual void draw(MinGL& window) const override;
73
74 virtual void getValues(const int &id, std::vector<float> &values) override;
75 virtual void setValues(const int &id, const std::vector<float> &values) override;
76
82 Rectangle operator+(const nsGraphics::Vec2D& position) const;
83
89 Rectangle operator*(const float& f) const;
90
96
102 void setFirstPosition(const nsGraphics::Vec2D &firstPosition);
103
109
115 void setSecondPosition(const nsGraphics::Vec2D &secondPosition);
116
117private:
121 nsGraphics::Vec2D m_firstPosition;
122
126 nsGraphics::Vec2D m_secondPosition;
127
128}; // class Rectangle
129
130} // namespace nsShape
131
132#endif // RECTANGLE_H
Classe de base de minGL 2.
Definition: mingl.h:35
Classe représentant un couleur RGBA8888.
Definition: rgbacolor.h:26
Classe représentant un vecteur deux-dimensionnel.
Definition: vec2d.h:26
Classe représentant un rectangle.
Definition: rectangle.h:26
Rectangle(const nsGraphics::Vec2D &position, const unsigned &width, const unsigned &height, const nsGraphics::RGBAcolor &fillColor, const nsGraphics::RGBAcolor &borderColor=nsGraphics::KTransparent)
Constructeur pour la classe Rectangle.
const nsGraphics::Vec2D & getSecondPosition() const
Récupère la Position du coin bas-droit du rectangle.
virtual void getValues(const int &id, std::vector< float > &values) override
Récupère des valeurs dans un vecteur de float pour l'ID spécifié
const nsGraphics::Vec2D & getFirstPosition() const
Récupère la Position du coin haut-gauche du rectangle.
Rectangle(const nsGraphics::Vec2D &firstPosition, const nsGraphics::Vec2D &secondPosition, const nsGraphics::RGBAcolor &fillColor, const nsGraphics::RGBAcolor &borderColor=nsGraphics::KTransparent)
Constructeur pour la classe Rectangle.
TransitionIds
TransitionIds : Liste de toutes les transitions que cet élément peut exécuter.
Definition: rectangle.h:32
@ TRANSITION_SECOND_POSITION
Definition: rectangle.h:38
@ TRANSITION_FILL_COLOR_ALPHA
Definition: rectangle.h:34
@ TRANSITION_BORDER_COLOR_RGB
Definition: rectangle.h:35
@ TRANSITION_BORDER_COLOR_ALPHA
Definition: rectangle.h:36
virtual ~Rectangle() override=default
virtual void setValues(const int &id, const std::vector< float > &values) override
Définit les nouvelles valeurs pour l'ID spécifié
Rectangle operator+(const nsGraphics::Vec2D &position) const
Opérateur de décalage.
virtual void draw(MinGL &window) const override
Fonction pour afficher l'objet.
void setSecondPosition(const nsGraphics::Vec2D &secondPosition)
Définit la nouvelle Position du coin bas-droit du rectangle.
void setFirstPosition(const nsGraphics::Vec2D &firstPosition)
Définit la nouvelle Position du coin haut-gauche du rectangle.
Rectangle operator*(const float &f) const
Opérateur de réduction.
Classe de base pour une forme.
Definition: shape.h:30
Une classe abstraite pour n'importe quelle élément pouvant effectuer une transition entre deux états.
const RGBAcolor KTransparent
Definition: rgbacolor.h:173
Espace de nom pour différentes formes.
Definition: circle.h:19
Représente une forme.