Voili voilou

Dependencies:   RoboClaw StepperMotor mbed

Fork of Robot2016_2-0 by ARES

Committer:
IceTeam
Date:
Tue Jan 26 16:39:43 2016 +0000
Revision:
31:8bcc3a0bfa8a
Parent:
11:9c70a7f4d7aa
Le commit d'une truc pourri;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
IceTeam 11:9c70a7f4d7aa 1 #ifndef MAP_H
IceTeam 11:9c70a7f4d7aa 2 #define MAP_H
IceTeam 11:9c70a7f4d7aa 3
IceTeam 11:9c70a7f4d7aa 4 #include "defines.h"
IceTeam 11:9c70a7f4d7aa 5
IceTeam 31:8bcc3a0bfa8a 6 #include "Obstacles/Obstacle.h"
IceTeam 11:9c70a7f4d7aa 7 #include "Point.h"
IceTeam 11:9c70a7f4d7aa 8 #include <vector>
IceTeam 11:9c70a7f4d7aa 9
IceTeam 11:9c70a7f4d7aa 10 #define DIAG_COST 0.7071067/2
IceTeam 11:9c70a7f4d7aa 11 #define NDIAG_COST 0.5/2
IceTeam 11:9c70a7f4d7aa 12
IceTeam 11:9c70a7f4d7aa 13 #define LOG_LEVEL 2 //4 debug(very slow) - 3 errors/warnings/infos - 2 errors/warnings - 1 errors - 0 none
IceTeam 11:9c70a7f4d7aa 14 #define LOG_ASTAR 1
IceTeam 11:9c70a7f4d7aa 15 #define LOG_TENDEUR 1
IceTeam 11:9c70a7f4d7aa 16
IceTeam 11:9c70a7f4d7aa 17
IceTeam 11:9c70a7f4d7aa 18
IceTeam 11:9c70a7f4d7aa 19 class SimplePoint
IceTeam 11:9c70a7f4d7aa 20 {
IceTeam 11:9c70a7f4d7aa 21 public:
IceTeam 11:9c70a7f4d7aa 22 SimplePoint(float x, float y) : x(x),y(y) {}
IceTeam 11:9c70a7f4d7aa 23 SimplePoint(const SimplePoint &p) : x(p.x),y(p.y) {}
IceTeam 11:9c70a7f4d7aa 24 bool operator!=(SimplePoint& p) {return x!=p.x||y!=p.y;}
IceTeam 11:9c70a7f4d7aa 25 virtual ~SimplePoint() {}
IceTeam 11:9c70a7f4d7aa 26 float x,y;
IceTeam 11:9c70a7f4d7aa 27 };
IceTeam 11:9c70a7f4d7aa 28
IceTeam 11:9c70a7f4d7aa 29 class Map
IceTeam 11:9c70a7f4d7aa 30 {
IceTeam 11:9c70a7f4d7aa 31 public:
IceTeam 11:9c70a7f4d7aa 32 Map();
IceTeam 11:9c70a7f4d7aa 33 ~Map();
IceTeam 11:9c70a7f4d7aa 34 void build();
IceTeam 11:9c70a7f4d7aa 35
IceTeam 11:9c70a7f4d7aa 36 int getHeight(float x, float y);
IceTeam 11:9c70a7f4d7aa 37
IceTeam 11:9c70a7f4d7aa 38 // mpc : metre par case, par defaut chaque case fait 10cm
IceTeam 11:9c70a7f4d7aa 39 // Position en mm !!
IceTeam 11:9c70a7f4d7aa 40 char AStar(float x, float y, float goal_x, float goal_y, float mpc=100);
IceTeam 11:9c70a7f4d7aa 41
IceTeam 11:9c70a7f4d7aa 42
IceTeam 11:9c70a7f4d7aa 43 std::vector<SimplePoint> path;
IceTeam 11:9c70a7f4d7aa 44 std::vector<Obstacle*> obstacles;
IceTeam 11:9c70a7f4d7aa 45 private:
IceTeam 11:9c70a7f4d7aa 46 };
IceTeam 11:9c70a7f4d7aa 47
IceTeam 11:9c70a7f4d7aa 48
IceTeam 11:9c70a7f4d7aa 49 #endif