Eirbot1A-2020
|
Permet definir la table de jeu et les différentes structures nécessaires au fonctionnement de la navigation. Plus de détails...
#include <vector>
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< obstacle > | fillVector () |
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< 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. Plus de détails... | |
Permet definir la table de jeu et les différentes structures nécessaires au fonctionnement de la navigation.
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.
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.
list_obstacles | la liste des obstacles de la table |
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.
x | coordonnée x du point à tester |
y | coordonnée y du point à tester |
list_obstacles | listes des obstacles sur la table |