Simple & scalable multi-agent pathfinding (MAPF) visualizer for research usage.
Based on openFrameworks, written in C++14.
git clone --recursive https://github.com/Kei18/mapf-visualizer.git
cd mapf-visualizer
bash third_party/openFrameworks/scripts/osx/download_libs.sh
make -j4
echo -e "\nexport PATH=$(pwd)/bin/mapf-visualizer.app/Contents/MacOS:\$PATH" >> ~/.bashrc
required: around 10 minutes
git clone https://github.com/Kei18/mapf-visualizer.git
cd mapf-visualizer
wget -O third_party/openFrameworks.tar.gz https://github.com/openframeworks/openFrameworks/releases/download/0.12.0/of_v0.12.0_linux64gcc6_release.tar.gz
tar -xzvf third_party/openFrameworks.tar.gz -C third_party --strip-components=1 --one-top-level=openFrameworks
sudo third_party/openFrameworks/scripts/linux/ubuntu/install_dependencies.sh
sudo third_party/openFrameworks/scripts/linux/ubuntu/install_codecs.sh
make -j4
echo -e "\nexport PATH=$(pwd)/bin:\$PATH" >> ~/.bashrc
Replace the last line with the following:
echo -e "\nexport PATH=$(pwd)/bin/mapf-visualizer.app/Contents/MacOS:\$PATH" >> ~/.zshrc
echo -e "\nexport PATH=$(pwd)/bin:\$PATH" >> ~/.zshrc
I heard that the visualizer worked on (Arch) Linux.
To install, try install_linux.sh
.
You may need sudo
.
The changes will be applied after you restart your terminal. To apply the changes immediately, run source ~/.bashrc
or source ~/.zshrc
.
mapf-visualizer assets/random-32-32-20.map assets/demo_random-32-32-20.txt
You can manipulate it via your keyboard. See printed info.
The agent orientation is supported, thanks to @JustinShetty. Try:
mapf-visualizer assets/2x2.map assets/demo_2x2.txt
e.g.,
0:(5,16),(21,29),[...]
1:(5,17),(21,28),[...]
[...]
(x, y)
denotes location.
(0, 0)
is the left-top point.
(x, 0)
is the location at x
-th column and 1st row.
- Please specify correct files. I omitted error handling
- The grid maps in
assets/
are from MAPF benchmarks - The font in
visualizer/bin/data
is from Google Fonts - This repo is forked from a series of my previous studies such as pibt2, mapf-IR, otimapp, etc. This repo is compatible with lacam, tswap, pypibt, etc.
- Install pre-commit:
pre-commit install
- I'm happy if this repo helps somebody. Please use "Cite this repository" on this page for citation.
This software is released under the MIT License, see LICENSE.txt.