The aim of our software is to allow users to view .tck
files, which represent white matter tracts
derived from diffusion MRI, and engage the user with the help of various effects.
The user will be able to experience a dynamic animation of particles flowing along these white matter
tracts, position the camera along the path of these streamlines and apply a selection of expanding views and
visual enhancements that aid in analyzing and understanding the structures of these white matter tracts.
This project uses the following external resources:
Tool | Description | Version | Source | License |
---|---|---|---|---|
GLFW | An open source, multi-platform library for OpenGL. | 3.3.9 | link | zlib |
GLM | A header only C++ mathematics library for graphics software. | 1.0.0 | link | MIT |
GLAD | OpenGL Loader-Generator based on the official specifications. | 0.1.36 | link | MIT |
Dear ImGui | A bloat-free graphical user interface library. | 1.90.3 | link | MIT |
NFD Extended | A library that invokes native file open and file save dialogs. | 1.1.1 | link | zlib |
IconFontCppHeaders | A set of header files and classes for using icon fonts in C++. | 6.5.1 | link | zlib |
FontAwesome | The Internet's icon library and toolkit. | 6.5.1 | link | SIL OFL |
LearnOpenGL1 | Resource for learning OpenGL with examples. | N/A | link | CC BY-NC 4.0 |
All resources have been included in the repository in external/
for consistancy during development and building.
To build the program, use CMake to build the main
target, or let your IDE figure it out (it probably will).
mkdir build
cd build
cmake ..
make
To make an installer for the application (Windows, NSIS), first build the project, then go to the build directory and
run the cpack
command.
cd build
cpack
The program can be launched in two ways:
- From a GUI context. E.g: you double-click the file on your desktop. There will be no console output.
- From a commandline context. There will be console output. When calling from a commandline, please use the following
to combat asynchronous behaviour:
- Powershell:
Start-Process -Wait .\main.exe
- CMD:
start /wait main.exe
- Powershell:
If you're using an IDE, your IDE will probably do the right thing if you just run the main
target.
Footnotes
-
Some code has been changed compared to the provided code. ↩