checkpoint
[anneal.git] / src / edu / berkeley / qfat / MeshViewer.java
index 658beb1..b1f0e52 100644 (file)
@@ -18,10 +18,10 @@ public class MeshViewer implements GLEventListener, MouseListener, MouseMotionLi
     public Mesh.Vert[] points;
 
 
-    public boolean tileon = false;
+    public boolean tileon = true;
     public boolean tilemeshon = false;
-    public boolean goalon = true;
-    public boolean anneal = false;
+    public boolean goalon = false;
+    public boolean anneal = true;
 
     public int breaks = 0;
     boolean alt = false;
@@ -179,9 +179,9 @@ public class MeshViewer implements GLEventListener, MouseListener, MouseMotionLi
 
         gl.glBegin(GL.GL_TRIANGLES);
         if (tileon)
-        draw(gl, true, tile);
+        draw(gl, true, safeTriangles);
         if (tilemeshon)
-        draw(gl, false, tile);
+        draw(gl, false, safeTriangles);
         gl.glEnd();
 
         //draw(gl, false, tile);
@@ -211,11 +211,13 @@ public class MeshViewer implements GLEventListener, MouseListener, MouseMotionLi
         gl.glEnable (GL.GL_LIGHTING);
     }
 
-    private void draw(GL gl, boolean triangles, Mesh mesh) {
+    protected HashSet<Mesh.T> safeTriangles = new HashSet<Mesh.T>();
+
+    private void draw(GL gl, boolean triangles, Iterable<Mesh.T> tris) {
         float red = 0.0f;
         float green = 0.0f;
         float blue = 0.0f;
-        for(Mesh.T t : mesh) {
+        for(Mesh.T t : tris) {
             if (red < 0.15) red = 1.0f;
             if (green < 0.15) green = 1.0f;
             if (blue < 0.15) blue = 1.0f;