Eirbot1A-2020
Référence du fichier world.hpp

Permet definir la table de jeu et les différentes structures nécessaires au fonctionnement de la navigation. Plus de détails...

#include <vector>
Graphe des dépendances par inclusion de world.hpp:
Ce graphe montre quels fichiers incluent directement ou indirectement ce fichier :

Aller au code source de ce fichier.

Classes

struct  Node
 Structure permettant de définir un Node, essentiel pour réaliser l'Astar. Plus de détails...
 
struct  shape
 Permet de définir une forme pour ensuite être utilisé dans un obstacle. Plus de détails...
 
struct  obstacle
 Permet de définir un obstacle sur la table. Plus de détails...
 

Macros

#define ROBOT_WIDTH   32
 La largeur du robot.
 
#define ROBOT_LENGTH   32
 La longueur du robot.
 
#define X_MAX   300
 La longueur de la table.
 
#define Y_MAX   200
 La largeur de la table.
 

Fonctions

std::vector< obstaclefillVector ()
 Permet de remplir un vecteur avec la liste des obstacles, c'est ici que l'on ajoute ou enlève des obstacles. Plus de détails...
 
bool isValid (short x, short y, std::vector< obstacle > list_obstacles)
 Permet de savoir, si le robot est dans une position si il entre en collision avec un obstacle. Plus de détails...
 
bool who_here (short x, short y, struct shape shape, std::vector< obstacle > list_obstacles)
 
std::vector< obstaclefillVector_no_ecocup ()
 Cette fonction permet de gérer un cas particulier où l'on détecte un robot et que l'Astar n'arrive plus à trouver un chemin pour sortir car il est bloqué par d'autres obstacles. Dans ce cas là, on supprime de la liste des obstacles les éco cups et on se permet de rouler dessus pour éviter le robot adverse en rappelant l'Astar. Plus de détails...
 

Description détaillée

Permet definir la table de jeu et les différentes structures nécessaires au fonctionnement de la navigation.

Auteur
SD

Documentation des fonctions

◆ fillVector()

std::vector<obstacle> fillVector ( )

Permet de remplir un vecteur avec la liste des obstacles, c'est ici que l'on ajoute ou enlève des obstacles.

Renvoie
un vecteur avec la liste des obstacles
Voici le graphe des appelants de cette fonction :

◆ fillVector_no_ecocup()

std::vector<obstacle> fillVector_no_ecocup ( )

Cette fonction permet de gérer un cas particulier où l'on détecte un robot et que l'Astar n'arrive plus à trouver un chemin pour sortir car il est bloqué par d'autres obstacles. Dans ce cas là, on supprime de la liste des obstacles les éco cups et on se permet de rouler dessus pour éviter le robot adverse en rappelant l'Astar.

Paramètres
list_obstaclesla liste des obstacles de la table
Renvoie
la liste des obstacles sans les écos cups
Voici le graphe des appelants de cette fonction :

◆ isValid()

bool isValid ( short  x,
short  y,
std::vector< obstacle list_obstacles 
)

Permet de savoir, si le robot est dans une position si il entre en collision avec un obstacle.

Paramètres
xcoordonnée x du point à tester
ycoordonnée y du point à tester
list_obstacleslistes des obstacles sur la table
Voici le graphe des appelants de cette fonction :