checkpoint
authoradam <adam@megacz.com>
Wed, 5 Dec 2007 06:03:49 +0000 (22:03 -0800)
committeradam <adam@megacz.com>
Wed, 5 Dec 2007 06:03:49 +0000 (22:03 -0800)
darcs-hash:20071205060349-5007d-94bcc1b0584365d62433cad22374e2e1efd65d97.gz

src/edu/berkeley/qfat/Mesh.java
src/edu/berkeley/qfat/geom/PointSet.java

index 3b39842..374f012 100644 (file)
@@ -98,7 +98,6 @@ public class Mesh implements Iterable<Mesh.T> {
         return (float)total;
     }
 
         return (float)total;
     }
 
-
     public class BindingGroup {
         public HashSet<E> es = new HashSet<E>();
         public BindingGroup() { }
     public class BindingGroup {
         public HashSet<E> es = new HashSet<E>();
         public BindingGroup() { }
@@ -139,8 +138,6 @@ public class Mesh implements Iterable<Mesh.T> {
         public Point getPoint() { return p; }
         private Vert(Point p) {
             this.p = p;
         public Point getPoint() { return p; }
         private Vert(Point p) {
             this.p = p;
-            //this.e = e;
-            //if (e==null) throw new Error();
             if (pointset.get(p) != null) throw new Error();
             pointset.add(this);
         }
             if (pointset.get(p) != null) throw new Error();
             pointset.add(this);
         }
@@ -193,8 +190,6 @@ public class Mesh implements Iterable<Mesh.T> {
 
         /** does NOT update bound pairs! */
         public boolean transform(Matrix m) {
 
         /** does NOT update bound pairs! */
         public boolean transform(Matrix m) {
-            // FIXME: screws up kdtree 
-            // FIXME: screws up hashmap
             unscore();
             try {
                 if (pointset.get(this.p)==null) throw new Error();
             unscore();
             try {
                 if (pointset.get(this.p)==null) throw new Error();
index 3b70118..8c6642c 100644 (file)
@@ -23,6 +23,7 @@ public class PointSet<V extends HasPoint> implements Iterable<V> {
     public void add(V v) {
         V x = get(v.getPoint());
         if (x != null && x.equals(v)) return;
     public void add(V v) {
         V x = get(v.getPoint());
         if (x != null && x.equals(v)) return;
+        if (x != null) throw new Error("duplicates!");
         Point p = v.getPoint();
         doubles[0] = p.x;
         doubles[1] = p.y;
         Point p = v.getPoint();
         doubles[0] = p.x;
         doubles[1] = p.y;