X-Git-Url: http://git.megacz.com/?p=anneal.git;a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fqfat%2FMesh.java;h=a93535799bb82953a400c69e76cd0e97d48d0c20;hp=3544dba67950a21f533f0112a35716f5bc8fa73c;hb=4d3990172ccd3eae8c771780a7a0c3bc0d897f36;hpb=bc5bc47f080218f91ef987102204775e3e2b6677 diff --git a/src/edu/berkeley/qfat/Mesh.java b/src/edu/berkeley/qfat/Mesh.java index 3544dba..a935357 100644 --- a/src/edu/berkeley/qfat/Mesh.java +++ b/src/edu/berkeley/qfat/Mesh.java @@ -14,9 +14,10 @@ public class Mesh implements Iterable { public static final float EPSILON = (float)0.0001; public static final Random random = new Random(); - private PointSet pointset = new PointSet(); - public int size() { return pointset.size(); } - public Iterable vertices() { return pointset; } + private PointSet vertices = new PointSet(); + + public int size() { return vertices.size(); } + public Iterable vertices() { return vertices; } public Iterable edges() { return @@ -38,7 +39,7 @@ public class Mesh implements Iterable { public Iterator iterator() { /* - for(Vert v : pointset) + for(Vert v : vertices) if (v.e != null && v.e.t != null) return new FaceIterator(v); return new FaceIterator(); @@ -105,7 +106,7 @@ public class Mesh implements Iterable { public void transform(Matrix m) { ArrayList set = new ArrayList(); - for (Vert v : pointset) + for (Vert v : vertices) set.add(v); for(Vert v : set) v.transform(m); } @@ -122,10 +123,10 @@ public class Mesh implements Iterable { return (float)total; } - public void rebuildPointSet() { pointset.rebuild(); } - public Vec diagonal() { return pointset.diagonal(); } - public Point centroid() { return pointset.centroid(); } - public Vert nearest(Point p) { return pointset.nearest(p); } + public void rebuild() { /*vertices.rebuild();*/ } + public Vec diagonal() { return vertices.diagonal(); } + public Point centroid() { return vertices.centroid(); } + public Vert nearest(Point p) { return vertices.nearest(p); } public final class Vert extends HasPoint { public String toString() { return p.toString(); } @@ -156,8 +157,8 @@ public class Mesh implements Iterable { private Vert(Point p) { this.p = p; - if (pointset.get(p) != null) throw new Error(); - pointset.add(this); + if (vertices.get(p) != null) throw new Error(); + vertices.add(this); } private void glNormal(GL gl) { @@ -301,15 +302,15 @@ public class Mesh implements Iterable { unApplyQuadricToNeighbor(); Point oldp = this.p; try { - if (pointset.get(this.p)==null) throw new Error(); - pointset.remove(this); + if (vertices.get(this.p)==null) throw new Error(); + vertices.remove(this); removeTrianglesFromRTree(); float newx = m.a*p.x + m.b*p.y + m.c*p.z + m.d; float newy = m.e*p.x + m.f*p.y + m.g*p.z + m.h; float newz = m.i*p.x + m.j*p.y + m.k*p.z + m.l; this.p = new Point(newx, newy, newz); addTrianglesToRTree(); - pointset.add(this); + vertices.add(this); } catch (Exception e) { throw new RuntimeException(e); } @@ -413,7 +414,7 @@ public class Mesh implements Iterable { } public E getE(Point p2) { - Vert v = pointset.get(p2); + Vert v = vertices.get(p2); if (v==null) return null; return getE(v); } @@ -649,8 +650,8 @@ public class Mesh implements Iterable { /** creates an isolated edge out in the middle of space */ public E(Point p1, Point p2) { - if (pointset.get(p1) != null) throw new Error(); - if (pointset.get(p2) != null) throw new Error(); + if (vertices.get(p1) != null) throw new Error(); + if (vertices.get(p2) != null) throw new Error(); this.p1 = new Vert(p1); this.p2 = new Vert(p2); this.prev = this.next = this.pair = new E(this, this, this); @@ -662,7 +663,7 @@ public class Mesh implements Iterable { /** adds a new half-edge from prev.p2 to p2 */ public E(E prev, Point p) { Vert p2; - p2 = pointset.get(p); + p2 = vertices.get(p); if (p2 == null) p2 = new Vert(p); this.p1 = prev.p2; this.p2 = p2; @@ -768,8 +769,8 @@ public class Mesh implements Iterable { } public E makeE(Point p1, Point p2) { - Vert v1 = pointset.get(p1); - Vert v2 = pointset.get(p2); + Vert v1 = vertices.get(p1); + Vert v2 = vertices.get(p2); if (v1 != null && v2 != null) { E e = v1.getE(v2); if (e != null) return e;