--- /dev/null
+package edu.berkeley.qfat.geom;
+import javax.media.opengl.*;
+
+/** a constraint arising from the conjunction of linear equalities */
+public interface AffineConstraint {
+
+ public Point getProjection(Point p);
+ public AffineConstraint intersect(AffineConstraint c, float epsilon);
+
+ public static class All implements AffineConstraint {
+ public Point getProjection(Point p) { return p; }
+ public AffineConstraint intersect(AffineConstraint c, float epsilon) { return c; }
+ }
+
+ public static class Nothing implements AffineConstraint {
+ public Point getProjection(Point p) { return null; }
+ public AffineConstraint intersect(AffineConstraint c, float epsilon) { return this; }
+ }
+
+}