SUPER Space invader : Turbo edition DX - VS GOD 1.0.0
A simple space invader ripoff
circle.h
Go to the documentation of this file.
1
11#ifndef CIRCLE_H
12#define CIRCLE_H
13
14#include "shape.h"
15
16#include "../transition/itransitionable.h"
17
18namespace nsShape
19{
20
26{
27
28public:
39 };
40
49 Circle(const nsGraphics::Vec2D& position, const unsigned& radius, const nsGraphics::RGBAcolor& fillColor, const nsGraphics::RGBAcolor& borderColor = nsGraphics::KTransparent);
50
55 virtual ~Circle() override = default;
56
57 virtual void draw(MinGL& window) const override;
58
59 virtual void getValues(const int &id, std::vector<float> &values) override;
60 virtual void setValues(const int &id, const std::vector<float> &values) override;
61
68
74 Circle operator*(const float& f) const;
75
81
87 void setPosition(const nsGraphics::Vec2D &position);
88
93 unsigned getRadius() const;
94
100 void setRadius(const unsigned &radius);
101
102private:
106 nsGraphics::Vec2D m_position;
107
111 unsigned m_radius;
112
113}; // class Circle
114
115} // namespace nsShape
116
117#endif // CIRCLE_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 cercle.
Definition: circle.h:26
Circle(const nsGraphics::Vec2D &position, const unsigned &radius, const nsGraphics::RGBAcolor &fillColor, const nsGraphics::RGBAcolor &borderColor=nsGraphics::KTransparent)
Constructeur pour la classe Circle.
virtual ~Circle() override=default
Destructeur virtuel pour la classe Circle.
virtual void draw(MinGL &window) const override
Fonction pour afficher l'objet.
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é
virtual void setValues(const int &id, const std::vector< float > &values) override
Définit les nouvelles valeurs pour l'ID spécifié
void setRadius(const unsigned &radius)
Définit le nouveau rayon du cercle.
TransitionIds
TransitionIds : Liste de toutes les transitions que cet élément peut exécuter.
Definition: circle.h:32
@ TRANSITION_BORDER_COLOR_ALPHA
Definition: circle.h:36
@ TRANSITION_FILL_COLOR_ALPHA
Definition: circle.h:34
@ TRANSITION_BORDER_COLOR_RGB
Definition: circle.h:35
@ TRANSITION_RADIUS
Definition: circle.h:38
@ TRANSITION_FILL_COLOR_RGB
Definition: circle.h:33
@ TRANSITION_POSITION
Definition: circle.h:37
const nsGraphics::Vec2D & getPosition() const
Récupère la Position du cercle.
Circle operator+(const nsGraphics::Vec2D &getPosition) const
Opérateur de décalage.
void setPosition(const nsGraphics::Vec2D &position)
Définit la nouvelle Position du cercle.
Circle operator*(const float &f) const
Opérateur de réduction.
unsigned getRadius() const
Récupère le rayon du cercle.
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.