Bbop-Library 0.4.1-alpha
Opengl library to build 2d apps and game that implement a light system named Lumop
 
Loading...
Searching...
No Matches
collisionBoxClass.h
Go to the documentation of this file.
1/*
2 * collisionBoxClass.h
3 *
4 * Ce programme est distribué sous les termes de la Licence Publique
5 * Générale GNU, version 3.0, telle que publiée par la Free Software
6 * Foundation. Consultez la Licence Publique Générale GNU pour plus de
7 * détails.
8 *
9 * Vous devez avoir reçu une copie de la Licence Publique Générale GNU
10 * en même temps que ce programme. Si ce n'est pas le cas, consultez
11 * <https://www.gnu.org/licenses/>.
12 */
13
14#ifndef COLLISION_BOX_CLASS_H
15#define COLLISION_BOX_CLASS_H
16
17#include "bbopMathClass.h"
18#include "geometricClass.h"
19#include <iostream>
20
27class CollisionBox : public Geometric
28{
29public:
38 CollisionBox(Vector2f nPos, Vector2f nOrigin, Vector2f nSize, float nRotation);
39
45 CollisionBox(const Geometric& to_follow);
46
51
60 bool check(const CollisionBox &otherBox) const;
61
70 bool checkWithRotation(const CollisionBox &otherBox) const;
71
77 Vector2f getOffsetX() const;
78
84 Vector2f getOffsetY() const;
85
93 void setOffsetX(const Vector2f &off_);
94
103 void setOffsetX(float x_, float y_);
104
112 void setOffsetY(const Vector2f &off_);
113
122 void setOffsetY(float x_, float y_);
123
129 void follow(const Geometric &to_follow);
130
136 float getTop();
137
143 float getBottom();
144
150 float getLeft();
151
157 float getRight();
158
162 void flipHorizontally();
163
167 void flipVertically();
168
169private:
170 Vector2f offsetX; //<! rétrécicement X
171 Vector2f offsetY; //<! rétrécicement Y
172};
173
174
175#endif // !COLLISION_BOX_CLASS_H
void setOffsetY(const Vector2f &off_)
Change l'offsetY.
Definition collisionBoxClass.cpp:101
CollisionBox()
constructeur par défault de la boîte de collision
Definition collisionBoxClass.cpp:21
CollisionBox(Vector2f nPos, Vector2f nOrigin, Vector2f nSize, float nRotation)
Constructeur de la boîte de collision.
Definition collisionBoxClass.cpp:17
void setOffsetX(const Vector2f &off_)
Change l'offsetX.
Definition collisionBoxClass.cpp:90
float getTop()
Renvoie la position y de la limite haute de la boite.
Definition collisionBoxClass.cpp:120
bool check(const CollisionBox &otherBox) const
Detecte si la boîte est en collision avec une autre.
Definition collisionBoxClass.cpp:29
Vector2f getOffsetY() const
Renvoie l'offset Y de la boîte.
Definition collisionBoxClass.cpp:85
bool checkWithRotation(const CollisionBox &otherBox) const
Detecte si la boîte est en collision en prenant en compte la rotaion des deux boîtes.
Definition collisionBoxClass.cpp:48
Vector2f getOffsetX() const
Renvoie l'offset X de la boîte.
Definition collisionBoxClass.cpp:80
void flipHorizontally()
renverse la boîte de collision horizontallement
Definition collisionBoxClass.cpp:151
float getRight()
Renvoie la position x de la limite droite de la boite.
Definition collisionBoxClass.cpp:138
float getLeft()
Renvoie la position x de la limite gauche de la boite.
Definition collisionBoxClass.cpp:132
float getBottom()
Renvoie la position y de la limite basse de la boite.
Definition collisionBoxClass.cpp:126
void follow(const Geometric &to_follow)
Copy les caractèristique d'un objet Geometric pour utiliser la boîte de collision comme la sienne.
Definition collisionBoxClass.cpp:112
void flipVertically()
renverse la boîte de collision verticallement
Definition collisionBoxClass.cpp:144
Geometric(Vector2f nPos, Vector2f nOrigin, Vector2f nSize, float nRotation)
Definition geometricClass.cpp:16
Definition bbopMathClass.h:45