From 674a2d1a61e40084a9014714c10a92befc4af63a Mon Sep 17 00:00:00 2001
From: Christophe Geuzaine <cgeuzaine@ulg.ac.be>
Date: Tue, 4 May 2004 22:31:54 +0000
Subject: [PATCH] Only enable POLYGON_OFFSET_FILL for volume faces if we draw
 the edges. Otherwise it looks pretty bad since we draw connected faces with
 large differences in orientation.

---
 Graphics/Mesh.cpp | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/Graphics/Mesh.cpp b/Graphics/Mesh.cpp
index 86f95c2712..e630f4638e 100644
--- a/Graphics/Mesh.cpp
+++ b/Graphics/Mesh.cpp
@@ -1,4 +1,4 @@
-// $Id: Mesh.cpp,v 1.81 2004-04-24 16:24:34 geuzaine Exp $
+// $Id: Mesh.cpp,v 1.82 2004-05-04 22:31:54 geuzaine Exp $
 //
 // Copyright (C) 1997-2004 C. Geuzaine, J.-F. Remacle
 //
@@ -828,7 +828,7 @@ void Draw_Simplex_Volume(void *a, void *b)
 
     double n[3];
     if(CTX.mesh.light) glEnable(GL_LIGHTING);
-    glEnable(GL_POLYGON_OFFSET_FILL);
+    if(CTX.mesh.surfaces_edges || edges) glEnable(GL_POLYGON_OFFSET_FILL);
     if(!s->VSUP){
       glBegin(GL_TRIANGLES);
       if(CTX.mesh.light) glNormal3verts(s->V[0], s->V[2], s->V[1], n);
@@ -1076,7 +1076,7 @@ void Draw_Hexahedron_Volume(void *a, void *b)
 
     double n[3];
     if(CTX.mesh.light) glEnable(GL_LIGHTING);
-    glEnable(GL_POLYGON_OFFSET_FILL);
+    if(CTX.mesh.surfaces_edges || edges) glEnable(GL_POLYGON_OFFSET_FILL);
     glBegin(GL_QUADS);
     if(CTX.mesh.light) glNormal3verts(h->V[0], h->V[2], h->V[1], n);
     glVertex3d(X[0], Y[0], Z[0]);
@@ -1256,7 +1256,7 @@ void Draw_Prism_Volume(void *a, void *b)
 
     double n[3];
     if(CTX.mesh.light) glEnable(GL_LIGHTING);
-    glEnable(GL_POLYGON_OFFSET_FILL);
+    if(CTX.mesh.surfaces_edges || edges) glEnable(GL_POLYGON_OFFSET_FILL);
     glBegin(GL_TRIANGLES);
     if(CTX.mesh.light) glNormal3verts(p->V[0], p->V[2], p->V[1], n);
     glVertex3d(X[0], Y[0], Z[0]);
@@ -1392,7 +1392,7 @@ void Draw_Pyramid_Volume(void *a, void *b)
 
     double n[3];
     if(CTX.mesh.light) glEnable(GL_LIGHTING);
-    glEnable(GL_POLYGON_OFFSET_FILL);
+    if(CTX.mesh.surfaces_edges || edges) glEnable(GL_POLYGON_OFFSET_FILL);
     glBegin(GL_QUADS);
     if(CTX.mesh.light) glNormal3verts(p->V[0], p->V[3], p->V[2], n);
     glVertex3d(X[0], Y[0], Z[0]);
-- 
GitLab