User Interface for Motion Capture File Conversion
peter | 28 May, 2009 | 13:01The user interface for converting files is coming along nicely. At first I was a little confused as to how to fit so many unrelated controls together in a manner that actually made sense. The answer seems to be tabs. The top half of the UI contains the controls that must be used in order to convert, while the bottom half contains a series of tabs, each controlling some optional facet of conversion. For example, one tab controls logging. Should a log be saved? Where? Should it be appended or overwrite the existing log. Another tab controls the axis translation. It allows the user to specify the way the axes were laid out during motion capture, and how they should be laid out in the output files. The advantage is that these optional, extra controls are all separated from the main conversion, but they are readily available if needed.
Linking the UI to the code did present a few problems. I wanted to keep the interface separate from the actual conversion, so that a user could stay with the command line version if they so chose. This required some re-factoring of the code, to turn the classes that handled conversion into a package that the command line or GUI version would pass information into to take care of the details. With a little extra effort I’ve accomplished it without any changes noticeable to the user.
The next order of business for me is to create the tool for creating subject-templates. The ones I’ve been using so far, I wrote by hand, but not everyone will want to do that as it is a tedious process and very easy to make a mistake (like leave out a marker). As opposed to making a totally different program for this, I’ve decided to add it into the GUI for conversion. In theory, this tool will only be used once in a while, as it is only paying attention to the labels of markers and if you use the same marker layout for every actor, the same template can be re-used on all of them. The vast majority of conversions will be done without ever looking at this tool (as long as any needed templates are created properly in advance). For these reasons I don’t want to include it on the main view, as it would take up space that could be used by more frequently accessed tools, but it should be easily accessible, as the files it creates will have important ramifications on conversions. In short, I’m going with tabs again, this time at the same level as the main converter pane. I debated putting it down with the others, but the creation of a template has no effect on a conversion, just the presence (or absence) of one. It is also going to be far more complicated than the options presented in those tabs and will likely require a sample view of what a file would look like with the template applied.
