VTK Wedge Cell Types: Fix Point Ordering, Triangulation and Volume Correctness
This series of commits fixes long-standing issues with wedge cell types in VTK, where point orderings were inconsistent with parametric coordinates, leading to incorrect volume computations, negative volume tetrahedra in triangulations, and faces with incorrect outward normals. The fixes are mentioned below:
-
vtkWedge- Fix documentation and drawing: the point ordering in the vtk-examples and vtk-book was wrong and did not match the cell's parametric coordinates; this has been corrected
- Use outward normal winding for each face, which was broken as a result of the incorrect point ordering
-
TriangulateLocalIdsnow generates positive volume tetrahedrons - Fix tests generating wrong point ordering
-
vtkQuadraticWedge- Fix documentation and add topology drawing to match parametric coordinates
-
LinearWedgesnow produce positive volume wedges -
TriangulateLocalIdsnow generates positive volume tetrahedrons - Fix mesh with wrong point ordering used by a test
-
vtkBiQuadraticQuadraticWedge- Add topology drawing
-
LinearWedgesnow produce positive volume wedges -
TriangulateLocalIdsnow generates tetrahedrons (previously generated linear wedges)
-
vtkQuadraticLinearWedge- Add topology drawing
-
LinearWedgesnow produce positive volume wedges -
TriangulateLocalIdsnow generates tetrahedrons (previously generated linear wedges)
-
vtkBiQuadraticQuadraticHexahedron-
TriangulateLocalIdsnow generates tetrahedrons with valid points.
-
-
vtkCellTypeSource- Fix
vtkWedgepoint ordering to match parametric coordinates - Fix
vtkQuadraticWedgewedge point ordering to match parametric coordinates
- Fix
-
vtkEnsigh*Reader- Fix
vtkWedgepoint ordering to match parametric coordinates - Fix
vtkQuadraticWedgewedge point ordering to match parametric coordinates
- Fix
-
vtkAvmeshReader- Fix
vtkWedgepoint ordering to match parametric coordinates
- Fix
-
vtkIOSSReader/Writer- Fix
vtkWedgepoint ordering to match parametric coordinates - Fix
vtkQuadraticWedgewedge point ordering to match parametric coordinates - Fix
vtkBiQuadraticQuadraticWedgepoint ordering to match parametric coordinates - Fix
vtkLagrangeWedgepoint ordering to match parametric coordinates
- Fix
-
vtkTRUCHASReader- Fix
vtkWedgepoint ordering to match parametric coordinates
- Fix
-
vtkMeshQuality- Revert previous
vtkWedgepoint ordering fix, superseded by the above changes - Fix
vtkQuadraticHexahedron/vtkTriQuadraticHexahedronpoint ordering to account for differing conventions between VTK and Exodus/Patran (used by verdict)
- Revert previous
Related MR: vtk-examples!443 (merged).
Related discourse post: https://discourse.vtk.org/t/vtk-wedge-cell-types-fix-point-ordering-triangulation-and-volume-correctness/16322.
This MR resolves #19639 (closed), #19837 (closed).
Edited by Spiros Tsalikis

