View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0024918||Open CASCADE||OCCT:Visualization||public||2014-05-13 17:45||2021-08-24 14:21|
|Summary||0024918: Visualization, MeshVS - improve rendering of volume mesh|
|Description||Currently, MeshVS package implements very simple and inefficient way of rendering volume mesh: |
- each 3D mesh element is rendered as a complete set of its facets, that results in duplication of facets shared between adjacent 3D mesh elements
- internal facets of 3D mesh elements which are normally invisible are rendered
Two most typical situations that lead to the performance issue in case of a volume mesh:
- for a tetrahedral mesh containing N tetrahedrons 4*N triangles are rendered;
- for a hexahedral mesh containing N hexahedrons 6*N quads (or 12*N triangles) are rendered.
This limits potential usage of MeshVS for visualization of volume meshes even in case of moderate mesh size.
Possible improvements in this area:
1. Pre-compute and draw the 2D skin (or skins) of the volume mesh and ignore the internal facets. This will improve performance dramatically but leads to unexpected visual results when clipping planes are enabled in the view.
Nevertheless, this can become the first step.
Such optimized rendering can be switched off automatically in some cases when internal mesh details should be visible:
- when OpenGL clipping planes are activated
- when shrink display mode is used
- when transparency is set to non-zero
2. Implement advanced mesh clipping algorithm that will draw the cross-section of the volume mesh as a shaded area filled according to the colors of the intersected 3D mesh elements. See the attached image for example (taken from http://authors.library.caltech.edu/28218/1/Museth_Vis04_paper.pdf). The algorithm of building the cross-section is to be chosen, e.g. elements of ray tracing can be considered or specific GLSL shaders or even a geometrical algorithm that builds a planar mesh patch each time when the camera is modified...
3. In addition to advanced volume mesh clipping, the following aspects can be considered:
- semi-transparent volume mesh
- shrink display mode
|Tags||No tags attached.|
|Test case number|
|2014-05-13 17:45||san||New Issue|
|2014-05-13 17:45||san||Assigned To||=> san|
|2014-05-13 17:46||san||File Added: 3d_mesh_clipping.png|
|2014-05-13 17:54||san||Description Updated|
|2014-05-13 18:00||san||Description Updated|
|2014-05-13 18:07||san||Description Updated|
|2014-09-12 14:20||abv||Target Version||=> 7.1.0|
|2014-11-12 08:22||kgv||Summary||MeshVS: improved rendering of volume mesh => Visualization, MeshVS - improve rendering of volume mesh|
|2016-09-29 12:31||kgv||Relationship added||related to 0027905|
|2016-10-25 09:29||kgv||Target Version||7.1.0 => 7.2.0|
|2017-07-20 10:48||kgv||Target Version||7.2.0 => 7.4.0|
|2019-09-04 15:36||abv||Target Version||7.4.0 => 7.5.0|
|2020-09-21 17:20||kgv||Target Version||7.5.0 => 7.6.0|
|2021-08-24 14:21||kgv||Target Version||7.6.0 => 7.7.0|