Personal tools
You are here: Home Courses Algorithmic Robotics and Motion Planning Spring 2011 Exercises Assignment 2
« November 2021 »
Log in

Forgot your password?

Assignment 2


There are two available versions:

GUI - windows:

Download win-gui.

This version contains a VS solution ready to be used.
On error , make sure that your environment variables are properly configured, as in the guidelines.

Gui - linux:

Download linux-gui.

For eclipse, you should run cmake to generate an eclipse project and then import it to your workspace. (I just followed:

Common eclipse pitfalls:

  1. The build directory should have a different name then the source directory (at least that is what they say, I am not sure this is true). The recommended configuration is:
  2. The project source should not contain any CMakeCache.txt or CMakeFiles. If it does, CMake won't create the eclipse project in the build direcotry.
  3. If you want to debug, use the debug flag when running cmake.
  4. Don't forget that for compiling a release you should run cmake again to disable debug. I suggest that for release create another build directory and use regular make:
    ./project_build_debug - with eclipse project
    ./project_build_release - with a regular makefile.
  5. OPTIONAL: There is an eclipse plug-in for cmake which I didn't test, but you can give it a try.
  6. More info:

User manual

The GUI allows you to interactively construct your workspace, drawing obstacles and robots using the mouse.
The result of your program can be visualized - the inflated obstacles are presented on the screen, and the robot can move along its path.

It also supports loading and saving scenes, in the following format:

4 // number of points defining the workspace boundry. 
0.00 518.00 315.00 518.00 315.00 0.00 0.00 0.00 // Do not modify these values
2 // number of obstacles
5 // number of points in the first obstacle
-23.00 -138.00 36.00 -135.00 64.00 -90.00 50.00 -58.00 -7.00 -65.00 
// points are given in the format x1 y1 x2 y2 ....
4 // number of points in the second obstacle
107.00 -154.00 138.00 -160.00 155.00 -80.00 127.00 -68.00
1 // number of robots
4 // number of robot points
-7.00 134.00 -2.00 190.00 51.00 185.00 53.00 126.00
23.00 158.00 82.00 6.00 // start and goal position of the robot

The main class of your program is "Planner" and its "Run" function contains an explanation on how to query data from the input and return the result. This function currently returns a simple path that contains only two points - start and goal positions of the robot. The GUI supports multiple robots, and thats why all the information and results are given in arrays.


  • 31/03 - The reference point of the robot is the center of its bounding box. 
  • 26/03 - * BUG * The "Save" button (blue disk) doesn't work well. Use "Save As" instead.
  • 26/03 - For some users (probably 64bit win7), the command toStdString() in the line ui.DrawingBox->setFileLocation(fileName.toStdString()); may result in a running time error. 
    In that case replace 
    toStdString() with toAscii().data().
Document Actions