Bbop-2D 0.4.1-alpha
Bbop-2D is a c++ library based on openGL to make 2D game. It implement sprite, shape, light and more.
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{
29 public:
38 CollisionBox(Vector2f nPos, Vector2f nOrigin, Vector2f nSize,
39 float nRotation);
40
46 CollisionBox(const Geometric &to_follow);
47
52
61 bool check(const CollisionBox &otherBox) const;
62
71 bool checkWithRotation(const CollisionBox &otherBox) const;
72
78 Vector2f getOffsetX() const;
79
85 Vector2f getOffsetY() const;
86
94 void setOffsetX(const Vector2f &off_);
95
104 void setOffsetX(float x_, float y_);
105
113 void setOffsetY(const Vector2f &off_);
114
123 void setOffsetY(float x_, float y_);
124
130 void follow(const Geometric &to_follow);
131
137 float getTop();
138
144 float getBottom();
145
151 float getLeft();
152
158 float getRight();
159
163 void flipHorizontally();
164
168 void flipVertically();
169
170 private:
171 Vector2f offsetX; //<! rétrécicement X
172 Vector2f offsetY; //<! rétrécicement Y
173};
174
175#endif // !COLLISION_BOX_CLASS_H
gère une boîte de collision
Definition collisionBoxClass.h:28
void setOffsetY(const Vector2f &off_)
Change l'offsetY.
Definition collisionBoxClass.cpp:113
CollisionBox()
constructeur par défault de la boîte de collision
Definition collisionBoxClass.cpp:23
void setOffsetX(const Vector2f &off_)
Change l'offsetX.
Definition collisionBoxClass.cpp:105
Vector2f offsetX
Definition collisionBoxClass.h:171
Vector2f offsetY
Definition collisionBoxClass.h:172
float getTop()
Renvoie la position y de la limite haute de la boite.
Definition collisionBoxClass.cpp:129
bool check(const CollisionBox &otherBox) const
Detecte si la boîte est en collision avec une autre.
Definition collisionBoxClass.cpp:27
Vector2f getOffsetY() const
Renvoie l'offset Y de la boîte.
Definition collisionBoxClass.cpp:103
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:55
Vector2f getOffsetX() const
Renvoie l'offset X de la boîte.
Definition collisionBoxClass.cpp:101
void flipHorizontally()
renverse la boîte de collision horizontallement
Definition collisionBoxClass.cpp:160
float getRight()
Renvoie la position x de la limite droite de la boite.
Definition collisionBoxClass.cpp:147
float getLeft()
Renvoie la position x de la limite gauche de la boite.
Definition collisionBoxClass.cpp:141
float getBottom()
Renvoie la position y de la limite basse de la boite.
Definition collisionBoxClass.cpp:135
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:121
void flipVertically()
renverse la boîte de collision verticallement
Definition collisionBoxClass.cpp:153
gère un objet avec de propriété géométrique
Definition geometricClass.h:28
Definition bbopMathClass.h:47