A simple pathfinding module based on the theta* algorithm, communicating thanks to redis.
- Install dependencies (a valid c++ toolchain, cmake, pkg-config and hiredis)
sudo apt-get install build-essential cmake pkg-config libhiredis-dev
- Clone and compile
git clone https://github.com/rustyducks/NoWay.git
cd Noway && mkdir build && cd build
cmake ..
make -j8
Run the executable : ./NoWay [redis_host] [redis_port]
(default: 127.0.0.1:6379)
The executable will respond to redis command, here is the common workflow:
- Update the dynamic obstacles:
RPUSH dynamic_obstacles [xcenter],[ycenter],[radius] ...
- Ask a way:
PUBLISH findpath xstart,ystart;xgoal,ygoal
- The result will be available on
path
:GET path
->x1,y1;x2,y2;...xn,yn;...xgoal,ygoal;