checkpoint
[anneal.git] / src / edu / berkeley / qfat / Mesh.java
index fe5baf7..3c80182 100644 (file)
@@ -209,45 +209,24 @@ public class Mesh implements Iterable<Mesh.T> {
             oldscore = 0;
         }
         public void computeError() {
-            if (quadric_count == 0) {
-                if (immutableVertices) {
-                } else if (nearest_in_other_mesh == null) {
-                    if (score_against != null) {
-                        Vertex ne = score_against.nearest(p);
-                        oldscore = ne.fundamentalQuadric().preAndPostMultiply(p) * 100 * 10;
-                    } else {
-                        oldscore = 0;
-                    }
-                } else {
-                    oldscore = nearest_in_other_mesh.fundamentalQuadric().preAndPostMultiply(p) * 100 * 10;
-                }
-            } else {
-                oldscore = (quadric.preAndPostMultiply(p) * 100) / quadric_count;
-            }
-
-            oldscore = oldscore;
-
-            int numaspects = 0;
-            float aspects = 0;
+            oldscore =
+                quadric_count != 0
+                ? (quadric.preAndPostMultiply(p) * 100) / quadric_count
+                : immutableVertices
+                ? oldscore
+                : nearest_in_other_mesh != null
+                ? nearest_in_other_mesh.fundamentalQuadric().preAndPostMultiply(p) * 100 * 10
+                : score_against != null
+                ? score_against.nearest(p).fundamentalQuadric().preAndPostMultiply(p) * 100 * 10
+                : 0;
             for(E e = this.e; e!=null; e=e.pair.next==this.e?null:e.pair.next) {
-                //double ang = Math.abs(e.crossAngle());
                 double ang = Math.abs(e.crossAngle());
                 if (ang > Math.PI) throw new Error();
-                /*
-                  if (e.t != null) {
-                  numaspects++;
-                  aspects += e.t.aspect()*e.t.aspect();
-                  }
-                */
-
                 float minangle = (float)(Math.PI * 0.8);
                 if (ang > minangle)
                     oldscore += (ang - minangle);
-        }
-            if (numaspects > 0) oldscore += (aspects / numaspects);
+            }
 
-            //System.out.println(oldscore);
-            //oldscore = oldscore*oldscore;
             score += oldscore;
         }