Skip to content

Improve polyhedral contouring

Improved the contouring of VTK_POLYHEDRON cells by 1) making coordinate tolerance dependent on the size of the cell; 2) making value tolerance dependent on the range of values being contoured and 3) making the eigen value threshold more strict when determining the dimensionality of the input contour points.

This solves the problems encountered in http://www.vtk.org/Bug/view.php?id=15026 (see TestPolyhedron3) and http://www.vtk.org/Bug/view.php?id=14485 (see TestPolyhedron2)

Below is an example of the contouring problems we got on a simple testcase, and how the new code improves the situation. The test case is a small domain with only hexahedral cells. When we write them as polyhedral cells, the old code shows problems (second figure). With the new code, the images are almost identical (figure 3).

The first image shows the contoured surface when the cells are VTK_HEXAHEDRON image_0_HEXA

The second image shows the same contoured surface when the cells are VTK_POLYHEDRON - with the old vtkPolyhedron code. image_0_OLD

The third image shows the same contoured surface when the cells are VTK_POLYHEDRON - with the new vtkPolyhedron code. image_0_NEW

Merge request reports