3ui.tex 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. Note that since the application is still under construction, so not all screenshots may be up to date.
  2. \section{Graphical presentation of the running algorithm}\label{sec:graphicalPresentationOfTheRunningAlgorithm}
  3. A first sketch of how we want \appname to look is shown in figure~\ref{fig:sketch}.
  4. The current development status is displayed in figure~\ref{fig:full-application-example}.
  5. Another example graph and an explanation of the shapes and colors is provided in figure~\ref{fig:example}.
  6. Figure~\ref{fig:originalpapergraph} compares our results to those of Brandes and Köpf~\cite{brandes_fast_2001}.
  7. \begin{figure}[htp]
  8. \centering
  9. \includegraphics[width=\linewidth]{img/skizze}
  10. \caption[First sketch of the planned layout]{A first sketch of the planned layout, created with Microsoft Paint.
  11. The buttons are (first row, from left to right): step over, step into, step out, run, pause, debug; and (second row, from left to right): step back, step back out, run backwards.
  12. The actions corresponding to the buttons are the same as described for the keyboard input in table~\ref{table:keys}, at least for the features that are already implemented.
  13. The left four rectangles show the progress of the four extremal layouts.
  14. The right rectangle shows pseudocode of the algorithm and the position of the current step.}
  15. \label{fig:sketch}
  16. \end{figure}
  17. \begin{figure}[htp]
  18. \centering
  19. \includegraphics[width=\linewidth]{img/full-application-example}
  20. \caption[Full application window]{The full window of the application before any steps of the algorithm have been executed.
  21. The displayed graph has been loaded from figure~\ref{fig:json-example}.}
  22. \label{fig:full-application-example}
  23. \end{figure}
  24. \begin{figure}[htp]
  25. \centering
  26. \includegraphics[width=0.6\linewidth]{img/example}
  27. \caption[A simple graph with 5 nodes]{A simple graph with 5 nodes after the four extremal layout have been computed, but not balanced yet.
  28. The vertical directions are down (upper row), up (lower row) and the horizontal directions are left (left column) and right (right column).
  29. The background colors of the nodes display which block they belong to: For example the two red nodes on the upper right are in the same block.
  30. Round nodes are the roots of the blocks.
  31. A colored circle on a node indicates the class that this node belongs to and is also the color of the associated sink in the block graph.
  32. The node that is currently in the focus of the algorithm (whatever this means for the current stage) is highlighted in black color.
  33. Although edges are not drawn during the node placement phase we added them here as straight lines to improve readability.}
  34. \label{fig:example}
  35. \end{figure}
  36. \begin{figure}
  37. \centering
  38. \begin{subfigure}{\textwidth}
  39. \centering
  40. \includegraphics[width=\linewidth]{img/bk-example-theirs}
  41. \caption{An example graph directly taken from the paper of Brandes and Köpf~\cite{brandes_fast_2001}.}
  42. \label{fig:theirs}
  43. \end{subfigure}\\\vspace{4mm}
  44. \begin{subfigure}{\textwidth}
  45. \centering
  46. \includegraphics[width=0.4\linewidth]{img/bk-example-ours}
  47. \caption[The same graph as~\ref{fig:theirs}, displayed by \appname.]{The same graph as~\ref{fig:theirs}, displayed by \appname.
  48. The layouts are leftmost (first column), rightmost (third column), upper (first row) and lower (third row), respectively.
  49. The balanced layout is in the center.}
  50. \label{fig:ours}
  51. \end{subfigure}\\\vspace{4mm}
  52. \caption[Comparison with~\cite{brandes_fast_2001}]{Comparison of the implementation with the results of Brandes and Köpf~\cite{brandes_fast_2001}}
  53. \label{fig:originalpapergraph}
  54. \end{figure}
  55. \section{User interface}\label{sec:userInterface}
  56. Currently the only way to interact with the application is by keyboard events.
  57. It is planned to add additional commands, see chapter~\ref{ch:progress}.
  58. The possible inputs are listed in table~\ref{table:keys}.
  59. \begin{table}[htp]
  60. \begin{longtable}{|l|l|}
  61. \hline
  62. Key & Action \\\hline\hline
  63. Left arrow key & Perform one forward step of the algorithm. \\\hline
  64. Right arrow key & Perform one backward step---i.e.\ undo one step of the algorithm. \\\hline
  65. P & Pause/unpause the automatic execution. Initially paused. \\\hline
  66. D & Print a debug table to standard out. \\\hline
  67. \end{longtable}
  68. \caption[Overview of the currently available keyboard commands]{Overview of the currently available keyboard commands. For the planned commands, see~\ref{ch:progress}.}
  69. \label{table:keys}
  70. \end{table}