1 package edu.berkeley.qfat.geom;
2 import javax.media.opengl.*;
4 /** a constraint arising from the conjunction of linear equalities */
5 public interface AffineConstraint {
7 public Point getProjection(Point p);
8 public AffineConstraint intersect(AffineConstraint c, float epsilon);
9 public AffineConstraint multiply(Matrix m);
11 public static final AffineConstraint ALL = new AffineConstraint() {
12 public Point getProjection(Point p) { return p; }
13 public AffineConstraint intersect(AffineConstraint c, float epsilon) { return c; }
14 public AffineConstraint multiply(Matrix m) { return this; }
15 public String toString() { return "[AffineConstraint: ALL]"; }
18 public static final AffineConstraint NONE = new AffineConstraint() {
19 public Point getProjection(Point p) { return null; }
20 public AffineConstraint intersect(AffineConstraint c, float epsilon) { return this; }
21 public AffineConstraint multiply(Matrix m) { return this; }
22 public String toString() { return "[AffineConstraint: NONE]"; }