From bc2fede94b423e675af81cd9ad0c96ff7f359ddc Mon Sep 17 00:00:00 2001
From: Wenqing Wang <wenqing.wang@ufz.de>
Date: Wed, 27 Oct 2021 16:13:00 +0200
Subject: [PATCH] [MeshLib/VTK] Corrected the element nodes of 15 node prism

---
 MeshLib/MeshGenerators/VtkMeshConverter.cpp | 21 +++------------------
 1 file changed, 3 insertions(+), 18 deletions(-)

diff --git a/MeshLib/MeshGenerators/VtkMeshConverter.cpp b/MeshLib/MeshGenerators/VtkMeshConverter.cpp
index 8c97daef1ef..94573c7ace9 100644
--- a/MeshLib/MeshGenerators/VtkMeshConverter.cpp
+++ b/MeshLib/MeshGenerators/VtkMeshConverter.cpp
@@ -209,24 +209,9 @@ MeshLib::Mesh* VtkMeshConverter::convertUnstructuredGrid(
             }
             case VTK_QUADRATIC_WEDGE:
             {
-                auto** prism_nodes = new MeshLib::Node*[15];
-                for (unsigned j = 0; j < 3; ++j)
-                {
-                    prism_nodes[j] = nodes[node_ids->GetId(j + 3)];
-                    prism_nodes[j + 3] = nodes[node_ids->GetId(j)];
-                }
-                for (unsigned j = 0; j < 3; ++j)
-                {
-                    prism_nodes[6 + j] = nodes[node_ids->GetId(8 - j)];
-                }
-                prism_nodes[9] = nodes[node_ids->GetId(12)];
-                prism_nodes[10] = nodes[node_ids->GetId(14)];
-                prism_nodes[11] = nodes[node_ids->GetId(13)];
-                for (unsigned j = 0; j < 3; ++j)
-                {
-                    prism_nodes[12 + j] = nodes[node_ids->GetId(11 - j)];
-                }
-                elem = new MeshLib::Prism15(prism_nodes, i);
+                elem = detail::createElementWithSameNodeOrder<MeshLib::Prism15>(
+                    nodes, node_ids, i);
+
                 break;
             }
             default:
-- 
GitLab