public static void main(String[] args) { NewPolygon2D polygon = new NewPolygon2D(); polygon.moveTo(new Point2D.Double(-10, -10)); polygon.lineTo(new Point2D.Double(-10, 50)); polygon.lineTo(new Point2D.Double(10, 50)); polygon.lineTo(new Point2D.Double(10, -10)); polygon.lineTo(new Point2D.Double(-10, -10)); // polygon.closePath(); System.out.println(polygon); System.out.println(""); // System.exit(-1); Point2D pt = new Point2D.Double(0, 0); System.out.println("polygon contains " + pt + ": " + polygon.contains(pt)); pt = new Point2D.Double(100, 100); System.out.println("polygon contains " + pt + ": " + polygon.contains(pt)); System.out.println(""); Rectangle2D boundingBox = new Rectangle2D.Double(0, 0, 100, 100); // defines lower-left corner and width/height System.out.println(boundingBox); NewPolygon2D myClip = polygon.clip(boundingBox); System.out.println(myClip); }