public Point getProjection(Point p) { return this; }
public AffineConstraint intersect(AffineConstraint c, float epsilon) {
- if (c.getProjection(this).distance(this) <= epsilon) return this;
+ 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); }