// Vertexices //////////////////////////////////////////////////////////////////////////////
+
/** a vertex in the mesh */
public final class Vertex extends HasQuadric implements Visitor {
+ public void bindTo(Matrix bindingMatrix, HasBindingGroup other) {
+ bindTo(bindingMatrix, other, EPSILON);
+ }
+
public Point p, goodp;
public Point oldp;
E e; // some edge *leaving* this point
/** [UNIQUE] an edge */
public final class E extends HasBindingGroup implements Comparable<E> {
+ public void bindTo(Matrix bindingMatrix, HasBindingGroup other) {
+ bindTo(bindingMatrix, other, EPSILON);
+ }
+
public void sanity() {
if (destroyed) return;
if (pair!=null && (pair.v1!=v2 || pair.v2!=v1)) throw new RuntimeException();
v1.bindTo(getBindingMatrix(e), e.v1);
v2.bindTo(getBindingMatrix(e), e.v2);
/*
- e.v1.setConstraint(getConstraint());
- e.v2.setConstraint(getConstraint());
+ e.v1.setConstraint(getAffineConstraint());
+ e.v2.setConstraint(getAffineConstraint());
*/
}
}
e.v2.getE(mid).pair.pair.bindTo(e.getBindingMatrix(firste), firstq.pair);
}
/*
- first.setConstraint(firste.getConstraint());
- firstq.setConstraint(firste.getConstraint());
+ first.setConstraint(firste.getAffineConstraint());
+ firstq.setConstraint(firste.getAffineConstraint());
*/
return nearest(midpoint());
}
}
*/
/*
- first.setConstraint(firste.getConstraint());
- firstq.setConstraint(firste.getConstraint());
+ first.setConstraint(firste.getAffineConstraint());
+ firstq.setConstraint(firste.getAffineConstraint());
*/
return null;
}