Skip to content

Improved Generator, Conversion Tools

Bailey Andrew requested to merge devel-trackgen-2019-summer into master

Major features of this branch:

The launcher has a completely overhauled look to account for its new capabilities.

The random track generator is:

  • Faster
  • More consistently good (still not perfect, but good enough for use)
  • Generates more gazebo-friendly tracks
  • Completely parameterized, you can move sliders in the launcher to change how it generates.

I added a new feature, the "Conversion Tools". Since I've noticed that csvs are being used a lot, and since the launcher already supports launching from a .launch and a .png, I added tools to easily convert between all the file formats. That means that this feature can also convert from csv to .launch no problem - I noticed that there are some .csvs that are just data-dumps of competition cone positions, with some quick formatting on them the Conversion Tools will happily convert them to .launch so that is also nice. (I've been saying .launch but technically the real conversion work happens in the model folders).

Since .launch to .csv had already been created by someone else in track_gen.py (making my life much easier!) I edited that file a bit to hook it into the launcher gui and made it also keep track of car start position since that is necessary for conversion as well. Other than that, my edits were entirely contained in the eufs_launcher package.

Within Conversion Tools is a copying tool that allows you to quickly copy a file into a file with a different name. Many buttons have "Full Stack" options, this means that when the button is pressed it will automatically convert the file into .png, .launch, and .csv.


I should mention that with the gui launcher in the past there has been font-size weirdness when changing resolutions. As I only have 1 computer, it is not terribly easy to test this so please let me know if the font size is too small!

For a mildly more in-depth view of all the launcher's capabilities, I added a wiki page for it.

Edited by Bailey Andrew

Merge request reports