EXTRA CREDIT ASSIGNMENT!
The overlapping windows problem
Due by Friday, May 28 by 11:59:59pm
25 points


While managing a collection of rectangular windows in an environment such as Windows or KDE (go Linux!), the "window manager" must determine whether two windows overlap, and if so, where on the screen the overlapping region lies.

Design and write a program to perform this function. Your program will accept as input the coordinates of a pair of windows. Your program should print the coordinates of the overlapping region, or a message stating that the pair does not overlap.

All coordinates are expressed in "pixel numbers", which are integers ranging from 0 to 9999. The upper left-hand corner of the screen is at (0,0) and the lower right-hand corner of the screen is at (9999, 9999) (pretty nice resolution, huh!). A rectangle can be described by two pairs of (X,Y) coordinates. The first pair gives the coordinates for the upper left-hand corner (XUL,YUL) of the rectangle, and the second pair gives the lower right-hand corner coordinates (XLR,YLR). You are guaranteed that XUL < XLR and YUL < YLR (The upper left point will always be above the lower right point -- the origin is in the upper left corner, so the upper left point is actually less than the lower right).

Note that two windows which share a common edge, or a common corner, but have no other points in common, are said to have "No Overlap".

Example Run:

Enter upper left X coordinate of first rectangle: 0
Enter upper left Y coordinate of first rectangle: 20
Enter lower right X coordinate of first rectangle: 100
Enter lower right Y coordinate of first rectangle: 120

Now enter upper left X coordinate of second rectangle: 80
And the upper left Y coordinate of the second rectangle: 0
Next, enter the lower right X coordinate of the second rectangle: 500
And finally, the lower right Y coordinate of the second rectangle: 60

The rectangles with corner coordinates (0, 20) (100, 120) and (80, 0)(500, 60) overlap at: (80,20) (100,60)


You should create a RectangleOverlap class to place the code for this assignment.  Design your code modularly -- use specific methods for specific tasks.In comments at the top of the class, place your name, a description of what the program does, and a history of work done on the program.  Also use this area to document any items you were unable to complete.  Include output captures of your program (at least 3) that demonstrate your program works correctly.  Provide a description for each method in the class in the lines preceding each method.  Also use inline documentation where necessary to clarify your code.

You should have at least three different runs of the program captured.  Place your captured output in a file called output.txt -- this file should be a plain text file.

Submit to blackboard the above files in a .zip file named according to our naming conventions (e.g. capaultec.zip).

Have Fun!