checkpoint
authoradam <adam@megacz.com>
Sun, 16 Dec 2007 02:56:39 +0000 (18:56 -0800)
committeradam <adam@megacz.com>
Sun, 16 Dec 2007 02:56:39 +0000 (18:56 -0800)
darcs-hash:20071216025639-5007d-a7c68f23f1caf4d57bd9bf5647d8340ec2a7f1a4.gz

src/edu/berkeley/qfat/Mesh.java

index 6db50dc..bbb419a 100644 (file)
@@ -113,8 +113,12 @@ public class Mesh implements Iterable<Mesh.T> {
         }
 
         public void recomputeFundamentalQuadricIfNeighborChanged() {
-            if (score_against.nearest(p) == nearest_in_other_mesh) return;
+            Vertex oldv = nearest_in_other_mesh;
+            Vertex newv = score_against.nearest(p);
+            if (oldv==newv) return;
             recomputeFundamentalQuadric();
+            if (oldv!=null) oldv.recomputeFundamentalQuadricIfNeighborChanged();
+            //if (newv!=null) newv.recomputeFundamentalQuadricIfNeighborChanged();
         }
         public void recomputeFundamentalQuadric() {
             unApplyQuadricToNeighbor();