checkpoint
authoradam <adam@megacz.com>
Wed, 5 Dec 2007 07:12:32 +0000 (23:12 -0800)
committeradam <adam@megacz.com>
Wed, 5 Dec 2007 07:12:32 +0000 (23:12 -0800)
darcs-hash:20071205071232-5007d-81037d283f12759334ac4b890b4d594701bd4d68.gz

src/edu/berkeley/qfat/Main.java
src/edu/berkeley/qfat/Mesh.java

index 000fd94..2b36405 100644 (file)
@@ -239,7 +239,7 @@ public class Main implements GLEventListener, MouseListener, MouseMotionListener
         Random random = new Random();
 
     public synchronized void breakit() {
-        if (verts > 300) return;
+        if (verts > 50) return;
         //double min = (tile.avgedge/tile.numedges)*(1+(4/(double)verts));
         //if (verts>0 && tile.es.peek().length() < min) return;
         PriorityQueue<Mesh.E> es = new PriorityQueue<Mesh.E>();
@@ -257,14 +257,14 @@ public class Main implements GLEventListener, MouseListener, MouseMotionListener
     public synchronized void rand(double temperature, Mesh.Vert p) {
         double tile_score = tile.score();
         double goal_score = goal.score();
-        
         p.rescore();
+
+        /*
         //if (p.watch==null) return;
         float r1 = Math.abs(random.nextFloat());
         r1 = r1 - (float)Math.floor(r1);
         r1 = r1 * (float)0.01;
         r1 = r1 - (float)0.005;
-        /*
         public Vert partner() { return quadric==null ? this : quadric; }
         public Point quadric() { return quadric_count==0 ? partner().p :
                 new Point(quadric_x/quadric_count, quadric_y/quadric_count, quadric_z/quadric_count); }
@@ -302,6 +302,7 @@ public class Main implements GLEventListener, MouseListener, MouseMotionListener
         double swapProbability = Math.exp((-1 * delta) / temperature);
         //boolean doSwap = Math.random() < swapProbability;
         boolean doSwap = good && (tile_delta <= 0 && goal_delta <= 0);
+        //System.out.println(doSwap);
         if (doSwap) {
             tile_score = new_tile_score;
             goal_score = new_goal_score;
index efeb89b..e66c814 100644 (file)
@@ -74,7 +74,8 @@ public class Mesh implements Iterable<Mesh.T> {
             for(Vert p : new Vert[] { t.v1(), t.v2(), t.v3() }) {
                 if (done.contains(p)) continue;
                 done.add(p);
-                p.rescore();
+                //p.rescore();
+                p.recomputeFundamentalQuadric();
             }
         return (float)(dist/num);
     }
@@ -226,13 +227,13 @@ public class Mesh implements Iterable<Mesh.T> {
             rescore();
 
             // recompute fundamental quadrics of all vertices sharing a face
+            /*
             E e = this.e;
             do {
-                e.t.v1().recomputeFundamentalQuadric();
-                e.t.v2().recomputeFundamentalQuadric();
-                e.t.v3().recomputeFundamentalQuadric();
+                e.p2.recomputeFundamentalQuadric();
                 e = e.pair.next;
             } while(e != this.e);
+            */
             
             boolean good = true;
             /*