6.1 Framework choice
Because of the constraints that the project must be developed using C++ under Qt IDE, we used the Qt Widgets that are mature and feature rich user interface elements suitable for mostly static user interfaces. Besides, since Qt Widget are native C++ elements it is easier to merge UI with the application logic. The application UI is connected to all other parts of the application through the class Logic. The logic handles all the data interchange between the UI and algorithms. So it is possible to split the application in separate parts.
6.2 Basic elements of UI
The UI is straightforward and easy to use. There are two main parts – openGL screen and sidebar. It is possible to extract many cases of the application usage from the task:
- Load of the file
- Adjust the camera properties
- Adjust the light properties
- Adjust the displaying mode
- Calculate Laplacian Matrix and set new colors according to it
- Find the shortest path from one node to another