import javax.media.opengl.glu.*;
/** point in 3-space; immutable */
-public final class Point extends HasPoint implements HasBoundingBox, AffineConstraint {
+public final class Point implements HasBoundingBox, AffineConstraint, HasPoint {
public static final Point ZERO = new Point(0,0,0);
public Point getProjection(Point p) { return this; }
public AffineConstraint intersect(AffineConstraint c, float epsilon) {
- if (c.getProjection(this).distance(this) <= epsilon) return this;
- return null;
+ 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); }
+
}