From 3961556483b9fbdee83c5b811a73bb5c769edfc8 Mon Sep 17 00:00:00 2001
From: Christophe Geuzaine <cgeuzaine@ulg.ac.be>
Date: Mon, 14 Mar 2005 21:19:32 +0000
Subject: [PATCH] better subdivision scheme for drawing scalar hexahedra (with
 edges matching on opposite faces)

---
 Graphics/PostElement.cpp | 20 +++++++++++++++-----
 TODO                     |  6 +-----
 2 files changed, 16 insertions(+), 10 deletions(-)

diff --git a/Graphics/PostElement.cpp b/Graphics/PostElement.cpp
index 2741dda4c6..b152d61959 100644
--- a/Graphics/PostElement.cpp
+++ b/Graphics/PostElement.cpp
@@ -1,4 +1,4 @@
-// $Id: PostElement.cpp,v 1.62 2005-03-11 05:47:56 geuzaine Exp $
+// $Id: PostElement.cpp,v 1.63 2005-03-14 21:19:32 geuzaine Exp $
 //
 // Copyright (C) 1997-2005 C. Geuzaine, J.-F. Remacle
 //
@@ -697,10 +697,20 @@ void Draw_ScalarHexahedron(Post_View * View, int preproNormals,
     Draw_ElementBoundary(POST_HEXAHEDRON, View, X, Y, Z);
   }
 
-  REORDER6(0, 1, 3, 4, 5, 7);
-  Draw_ScalarPrism(View, preproNormals, ValMin, ValMax, Xp, Yp, Zp, Val);
-  REORDER6(1, 2, 3, 5, 6, 7);
-  Draw_ScalarPrism(View, preproNormals, ValMin, ValMax, Xp, Yp, Zp, Val);
+  // 6-tet subdivision whose edges match on each pair of opposite faces
+  REORDER4(0, 1, 3, 7);
+  Draw_ScalarTetrahedron(View, preproNormals, ValMin, ValMax, Xp, Yp, Zp, Val);
+  REORDER4(0, 4, 1, 7);
+  Draw_ScalarTetrahedron(View, preproNormals, ValMin, ValMax, Xp, Yp, Zp, Val);
+  REORDER4(1, 4, 5, 7);
+  Draw_ScalarTetrahedron(View, preproNormals, ValMin, ValMax, Xp, Yp, Zp, Val);
+
+  REORDER4(1, 2, 3, 7);
+  Draw_ScalarTetrahedron(View, preproNormals, ValMin, ValMax, Xp, Yp, Zp, Val);
+  REORDER4(1, 6, 2, 7);
+  Draw_ScalarTetrahedron(View, preproNormals, ValMin, ValMax, Xp, Yp, Zp, Val);
+  REORDER4(1, 5, 6, 7);
+  Draw_ScalarTetrahedron(View, preproNormals, ValMin, ValMax, Xp, Yp, Zp, Val);
 
   View->TimeStep = ts;
   View->ShowElement = show;
diff --git a/TODO b/TODO
index 5d8497ffab..932378f896 100644
--- a/TODO
+++ b/TODO
@@ -1,4 +1,4 @@
-$Id: TODO,v 1.90 2005-03-13 09:13:50 geuzaine Exp $
+$Id: TODO,v 1.91 2005-03-14 21:19:32 geuzaine Exp $
 
 ********************************************************************
 
@@ -23,10 +23,6 @@ add option to draw "filled isos" using 1D textures?
 
 ********************************************************************
 
-use marching cube algo for hexas to make iso-surfaces nicer?
-
-********************************************************************
-
 add GUI for 
 
 - translate+rotate extrusions
-- 
GitLab