HexVolumeRenderer
A program for rendering hexahedral meshes in the form of transparent volumes.
This repository was created for the paper
Interactive Focus+Context Rendering for Hexahedral Mesh Inspection.
Christoph Neuhauser, Junpeng Wang, Rüdiger Westermann.
to appear in IEEE Transactions on Visualization and Computer Graphics 2021 (TVCG 2021).
DOI: 10.1109/TVCG.2021.3074607
The rendering mode discussed in the paper can be used when selecting the renderer "ClearView (Unified)" in the program. The LOD structure discussed can be viewed with the renderer "LOD Lines (Preview, Sheets)".
Building and running the programm
Currently, there are three main ways to compile the program:
- Linux: Using the system package manager to install all dependencies (tested: apt on Ubuntu, pacman on Arch Linux).
- Linux & Windows: Installing all dependencies using vcpkg.
- Windows: Using MSYS2 to install all dependencies.
On Windows, we recommend to use vcpkg if you need to use Microsoft Visual Studio.
Guides for the different build types can be found in the directory docs/compilation
.
How to add new data sets
This program optionally supports downloading data sets from HexaLab. The user is responsible himself or herself that he or she has the rights to do this. For more details on HexaLab see:
HexaLab.net: an online viewer for hexahedral meshes
Matteo Braccix, Marco Tarini1,2,x, Nico Pietroni1,4, Marco Livesu3, Paolo Cignoni1
Computer-Aided Design, Volume 110, May 2019
Copyright 2018 Visual Computing Lab ISTI - CNR
Live view on www.hexalab.net
- x Joint first authors
- 1 ISTI - CNR
- 2 Universit? degli Studi di Milano ("La Statale")
- 3 IMATI - CNR
- 4 University of Technology, Sidney
Furthermore, the user can edit the index.json file in the directory Data/Meshes/ to add meshes manually. Please note that the file is overwritten when using the downloading functionality.
External Code, Assets and Data Sets
The program uses code excerpts from HexaLab (https://github.com/chrismile/HexaLab, see above) and code from Robust Hexahedral Re-Meshing (https://github.com/gaoxifeng/Robust-Hexahedral-Re-Meshing).
"Robust Structure Simplification for Hex Re-meshing", Xifeng Gao, Daniele Panozzo, Wenping Wang, Zhigang Deng, Guoning Chen, In ACM Transactions on Graphics (Proceedings of SIGGRAPH ASIA 2017)
The code from HexaLab is covered by the MIT License (see LICENSE-HexaLab). The code from Gao et al. is covered by the MPL 2.0 License (see License-BaseComplex). The code of the application itself is covered by the BSD 2-Clause License (see LICENSE). The font Droid Sans in the directory Data/Fonts/ is covered by the Apache Version 2.0 License (see DROID-SANS-LICENSE.txt).
Please note that different licenses apply to the data sets, dependencies and other assets downloaded. License information of used libraries can be found in the directory 'LICENSE-Libraries'. These libraries are used without modifications to the upstream version of the code of the respective libraries. Thus, the code is not provided in the repository.
Replicability
For more details on the TVCG Replicability Stamp, please refer to replicability/README.md
.