18#include <GLFW/glfw3.h>
19#include <initializer_list>
44 Shape(GLfloat* vertices, GLsizeiptr verticesSize, GLuint* indices, GLsizeiptr indicesSize);
64 void initShape(GLfloat* vertices, GLsizeiptr verticesSize, GLuint* indices, GLsizeiptr indicesSize);
86 void setSize(
float x_,
float y_);
153 void setColor(
int x_,
int y_,
int z_);
210 void move(
float x_,
float y_);
252 void Draw(GLint* renderUniforms)
const override;
254 GLfloat vertices[24];
256 void buildVAO()
override;
257 void updateVBO()
override;
258 void updateVBORGB()
override;
259 void updateVBOAlpha()
override;
300 void Draw(GLint* renderUniforms)
const override;
306 void buildVAO()
override;
307 void updateVBO()
override;
308 void updateVBORGB()
override;
309 void updateVBOAlpha()
override;
Class Parent de tous ce qui peut être dessiné par une Scene.
Definition bbopGlobal.h:94
void buildConvex()
Recalcule la géometrie du cercle.
Definition shapeClass.cpp:537
int getNPointCircle() const
Renvoie le nombre de point du cercle.
Definition shapeClass.cpp:568
float getRadius() const
Renvoie le rayon du cercle.
Definition shapeClass.cpp:557
void setRadius(float nRadius)
Change le rayon du cercle.
Definition shapeClass.cpp:551
CircleShape(int nnPoint, float nRadius)
constructeur du cercle
Definition shapeClass.cpp:533
void setNPointCircle(int nnPoint)
Change le nombre de point du cercle.
Definition shapeClass.cpp:562
gère une boîte de collision
Definition collisionBoxClass.h:28
void initConvex(int nnPoint, Vector2f *nlistPoint)
Initialise la convex comme le constructeur.
Definition shapeClass.cpp:407
void Draw(GLint *renderUniforms) const override
Déssine l'objet héritant de la class.
Definition shapeClass.cpp:504
ConvexShape & operator=(const ConvexShape &other)
Definition shapeClass.cpp:388
~ConvexShape()
Definition shapeClass.cpp:423
ConvexShape()
Constructeur par défault de la convex.
Definition shapeClass.cpp:368
RectangleShape()
Constructeur par défault du rectangle.
Definition shapeClass.cpp:235
void Draw(GLint *renderUniforms) const override
Déssine l'objet héritant de la class.
Definition shapeClass.cpp:284
CollisionBox & getCollisionBox()
Renvoie la boîte de collision de Shape.
Definition shapeClass.cpp:201
virtual void updateVBO()=0
void setAutoUpdateCollision(bool etat)
Change l'état de l'automatisation de la mise a jour de la boîte de collision.
Definition shapeClass.cpp:206
const Vector2f & getPosition() const
Renvoie la position du Shape.
Definition shapeClass.cpp:181
virtual void updateVBOAlpha()=0
Shape(GLfloat *vertices, GLsizeiptr verticesSize, GLuint *indices, GLsizeiptr indicesSize)
Constructeur de Shape.
Definition shapeClass.cpp:19
VAO shapeVAO
Definition shapeClass.h:213
void setRotation(float nRotation)
Change la rotation de la Shape.
Definition shapeClass.cpp:141
void initShape(GLfloat *vertices, GLsizeiptr verticesSize, GLuint *indices, GLsizeiptr indicesSize)
Initialise la Shape comme sont constructeur.
Definition shapeClass.cpp:69
VBO shapeVBO
Definition shapeClass.h:214
void setAlpha(float nAlpha)
Change la transaprence de la Shape.
Definition shapeClass.cpp:149
const Vector3i & getColor() const
Renvoie la couleur de Shape.
Definition shapeClass.cpp:186
void move(const Vector2f &vecM)
Déplace la Shape.
Definition shapeClass.cpp:155
float alpha
Definition shapeClass.h:223
virtual void updateVBORGB()=0
const Vector2f & getSize() const
Renvoie la Taille du Shape.
Definition shapeClass.cpp:171
const Vector2f & getOrigin() const
Renvoie l'origine de la Shape.
Definition shapeClass.cpp:176
virtual void buildVAO()=0
Vector2f size
Definition shapeClass.h:217
Vector3i RGB
Definition shapeClass.h:219
void setOrigin(const Vector2f &nOrigin)
Change l'origine de la Shape.
Definition shapeClass.cpp:111
~Shape()
Destructeur de shape.
Definition shapeClass.cpp:45
void setSize(const Vector2f &nSize)
Change la taille du Shape.
Definition shapeClass.cpp:75
Shape()
Constructeur par défault de Shape.
Definition shapeClass.cpp:32
CollisionBox shapeCollisionBox
Definition shapeClass.h:222
bool autoUpdateCollision
Definition shapeClass.h:220
void setColor(const Vector3i &nRGB)
Change la couleur de Shape.
Definition shapeClass.cpp:129
Vector2f pos
Definition shapeClass.h:216
void setPosition(const Vector2f &nPos)
Change la position du Shape.
Definition shapeClass.cpp:93
EBO shapeEBO
Definition shapeClass.h:215
Vector2f origin
Definition shapeClass.h:218
float rotation
Definition shapeClass.h:221
float getAlpha() const
Renvoie la transaprence du la Shape.
Definition shapeClass.cpp:196
float getRotation() const
Renvoie la rotation de la Shape.
Definition shapeClass.cpp:191
Definition bbopMathClass.h:45
Definition bbopMathClass.h:76