KurusView
KurusView is a cross-platform visualisation tool for three-dimensional models.
Interaction with the models is supported through the following features:
- Open multiple models in the same or different windows.
- Move models freely around every axis.
- Modify and edit multiple models at once.
- Apply shrink and/or clip filters.
- Measure model dimensions along predefined or custom axis.
- Change model, background, and back-face colour independently.
- Change the structure of the model to a wireframe.
- View the individual points of the model.
- Apply 3D gridlines encapsulating any model.
- Calculation of model statistics such as:
- Volume
- Weight
- Centre of Gravity
- Number of Cells
- Density
- Adjust lighting, model opacity and specularity.
- Save per-model view transformations (colours, position, etc) to proprietary .kurus files.
Light and dark modes are available and on Windows switching is automatic matching Windows app settings.
Requirements
- CMake >= 3.3
- Qt 5
- VTK 8.2.0
These requirements are only relevant if compiling from source. Installers are available.
Install
zip
and exe
installers are available for Windows, and zip
, tgz
and deb
for Linux.
Compile from source
1 $ cmake -DENABLE_TESTS=OFF build/
2 $ cmake --build build/ --target KurusView
Or without the GUI:
1 $ cmake -DENABLE_TESTS=OFF build/
2 $ cmake --build build/ --target KurusView_LIB
Repo tree
2 ├── include/ # Project Headers
3 | ├── Cells/ # MCell Children Headers
4 | ├── ModelRenderer/ # Semester 2 GUI Headers
5 | └── Utils/ # Internally Used Utility Headers
6 ├── lib/ # Library Source Files
7 | ├── Cells/ # MCell Children Source Files
8 | ├── ModelRenderer/ # Semester 2 GUI Source Files
9 | ├── Utils/ # Internally Used Utilities
10 | └── KurusViewLib.cmake # Library CMake
11 ├── models/ # Example Models (.kurus, .mod and .stl)
12 ├── packaging/ # Packaging CMake Dependencies
13 | └── CMakeLists.txt # Packaging CMake
14 ├── Resources/ # Icons, Images and Stylesheets
15 ├── src/ # Main Function Source File
16 | └── KurusView.cmake # Main Function CMake
17 ├── tests/ # Google Test Tests
18 | └── CMakeLists.txt # Tests CMake
19 ├── googletest/ # Git Submodule: Google Test
20 ├── doxygen-awesome-css/ # Git Submodule: Doxygen Awesome
21 └── CMakeLists.txt # Main CMakeLists
Documentation
Doxygen formatted comments are used in all header files and docs are hosted here. The theme used is by :rocket:.
Testing and Continuous Integration
This repository uses Google Test and Travis CI. To run tests yourself:
1 $ cmake -DENABLE_TESTS=ON build/
Other views