checkpoint
[anneal.git] / src / edu / berkeley / qfat / geom / HasBindingGroup.java
index 65d581f..ecc4f1c 100644 (file)
@@ -17,27 +17,11 @@ public abstract class HasBindingGroup {
         if (other.bindingGroup == null) other.bindingGroup = new BindingGroup(other);
 
         if (other.bindingGroup == this.bindingGroup) {
-            if (getBindingMatrix(other).equals(bindingMatrix))
+            if (getBindingMatrix(other).equalsModuloEpsilon(bindingMatrix, 0.001f))
                 return;
-            /*
-            if (this instanceof Mesh.E)
-                throw new Error("rebind attempt: "+this+" and "+other+" with "
-                                + bindingMatrix
-                                + "; expected "
-                                + getBindingMatrix(other));
-            */
-            setConstraint(bindingMatrix);
-            /*
-              System.err.println("WARNING: discarding rebind attempt: "+this+" and "+other+m);
-            */
-            //" with "
-            //+ bindingMatrix
-            //+ "; expected "
-            //+ getBindingMatrix(other));
             return;
         }
 
-
         bindingMatrix =
             getBindingMatrix().inverse()
             .times(bindingMatrix)
@@ -61,22 +45,6 @@ public abstract class HasBindingGroup {
         return bindingGroup.getMatrix(this, other);
     }
 
-    public HasBindingGroup getMaster() {
-        if (bindingGroup==null) return this;
-        return bindingGroup.getMaster();
-    }
-
-    public Matrix getConstraint() {
-        if (bindingGroup==null) return Matrix.ONE;
-        Matrix v = getBindingMatrix(getMaster());
-        return v.inverse().times(bindingGroup.krank).times(v);
-    }
-    public void setConstraint(Matrix m) {
-        if (bindingGroup==null) bindingGroup = new BindingGroup(this);
-        Matrix v = getBindingMatrix(getMaster());
-        bindingGroup.krank = bindingGroup.krank.times(v.inverse().times(m).times(v));
-    }
-
     public void unbind() {
         if (bindingGroup==null) return;
         bindingGroup.unbind(this);