public Point getProjection(Point p) { return this; }
public AffineConstraint intersect(AffineConstraint c, float epsilon) {
- if (c.getProjection(this).distance(this) <= epsilon) return this;
- System.err.println("off by: " + c.getProjection(this).distance(this));
- return new AffineConstraint.Nothing();
+ Point p2 = c.getProjection(this);
+ if (p2==null) return AffineConstraint.NONE;
+ if (p2.distance(this) <= epsilon) return this;
+ return AffineConstraint.NONE;
}
public AffineConstraint multiply(Matrix m) { return m.times(this); }