Various higher order cells return invalid results in IntersectWithLine
vtkQuadraticPyramid use the same switch case in the function
IntersectWithLine which has been wrongly copy-pasted from
vtkQuadraticHexahedron. Due to this copy-paste, there is a case for a 6th face while a pyramid/wedge has only 5 faces. Additionally, the faces 1-5 of
vtkQuadraticHexahedron differ parametrically speaking compared to the other cells, which results in wrong parametric coordinates.
Additionally, the points of the
vtkQuadraticTriangle faces of
vtkQuadraticPyramid are not initialized properly, and for that reason, the only faces that are returned are 0 (quad face) and 1 which is supposed to be a triangle but it's not actually one.
The aforementioned issues were discovered during the Implementation of vtkTriQuadraticPyramid cell.