X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Fedu%2Fberkeley%2Fqfat%2Fgeom%2FAffineConstraint.java;h=0242f3aa61692d1a36b3cacc309e63c9f522b581;hb=e34c426f065c06fccdfaa260925c7400d33dafdf;hp=a6fb01cc3321d47133b008c46fb4d595d4973f09;hpb=5dc5f8e70f3e4088f0f787e4c5e94d95c7e4c95f;p=anneal.git diff --git a/src/edu/berkeley/qfat/geom/AffineConstraint.java b/src/edu/berkeley/qfat/geom/AffineConstraint.java index a6fb01c..0242f3a 100644 --- a/src/edu/berkeley/qfat/geom/AffineConstraint.java +++ b/src/edu/berkeley/qfat/geom/AffineConstraint.java @@ -6,15 +6,20 @@ public interface AffineConstraint { 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 static final AffineConstraint ALL = new 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 String toString() { return "[AffineConstraint: ALL]"; } + }; - public static class Nothing implements AffineConstraint { - public Point getProjection(Point p) { return null; } - public AffineConstraint intersect(AffineConstraint c, float epsilon) { return this; } - } + public static final AffineConstraint NONE = new AffineConstraint() { + public Point getProjection(Point p) { return null; } + public AffineConstraint intersect(AffineConstraint c, float epsilon) { return this; } + public AffineConstraint multiply(Matrix m) { return this; } + public String toString() { return "[AffineConstraint: NONE]"; } + }; }