checkpoint
authoradam <adam@megacz.com>
Wed, 5 Dec 2007 05:10:04 +0000 (21:10 -0800)
committeradam <adam@megacz.com>
Wed, 5 Dec 2007 05:10:04 +0000 (21:10 -0800)
darcs-hash:20071205051004-5007d-a867edcd18e36fbe065caef49070286586fcf6f9.gz

src/edu/berkeley/qfat/Mesh.java
src/edu/berkeley/qfat/geom/HasPoint.java [new file with mode: 0644]

index f7ecb4d..0a26699 100644 (file)
@@ -16,7 +16,7 @@ public class Mesh implements Iterable<Mesh.T> {
     public static float EPSILON = (float)0.0001;
     public static Random random = new Random();
 
     public static float EPSILON = (float)0.0001;
     public static Random random = new Random();
 
-    private HashMap<Point,Vert>  verts = new HashMap<Point,Vert>();
+    private HashMap<Point,Vert> verts = new HashMap<Point,Vert>();
 
     public Iterable<E> edges() {
         return
 
     public Iterable<E> edges() {
         return
@@ -170,8 +170,9 @@ public class Mesh implements Iterable<Mesh.T> {
     }
 
     public Vert register(Point p) { Vert v = verts.get(p); return v==null ? new Vert(p) : v; }
     }
 
     public Vert register(Point p) { Vert v = verts.get(p); return v==null ? new Vert(p) : v; }
-    public final class Vert {
+    public final class Vert extends HasPoint {
         public Point p;
         public Point p;
+        public Point getPoint() { return p; }
         private Vert(Point p) {
             this.p = p;
             if (verts.get(p) != null) throw new Error();
         private Vert(Point p) {
             this.p = p;
             if (verts.get(p) != null) throw new Error();
diff --git a/src/edu/berkeley/qfat/geom/HasPoint.java b/src/edu/berkeley/qfat/geom/HasPoint.java
new file mode 100644 (file)
index 0000000..e72b0d0
--- /dev/null
@@ -0,0 +1,7 @@
+package edu.berkeley.qfat.geom;
+import javax.media.opengl.*;
+
+/** point in 3-space; immutable */
+public abstract class HasPoint {
+    public abstract Point getPoint();
+}