public Point getProjection(Point p);
public AffineConstraint intersect(AffineConstraint c, float epsilon);
+ public AffineConstraint multiply(Matrix m);
public static class All implements AffineConstraint {
public Point getProjection(Point p) { return p; }
public AffineConstraint intersect(AffineConstraint c, float epsilon) { return c; }
+ public AffineConstraint multiply(Matrix m) { return this; }
}
public static class Nothing implements AffineConstraint {
public Point getProjection(Point p) { return null; }
public AffineConstraint intersect(AffineConstraint c, float epsilon) { return this; }
+ public AffineConstraint multiply(Matrix m) { return this; }
}
}