Computer Science Department

CS 221 - Spring 2006

Assignment #5



Due: Friday, May 5th, at 8:00AM

Objectives Submission procedure: For this assignment, you need to submit your project folder to the Q drive and give me a printout of your MyPhotoShop.java file by the deadline listed above. You do not need to demo this program.

As you know, design must always precede implementation. You must write a flowchart for each and every one of your methods in this assignment, but I will not grade them. You do not have to submit them. However, you will have to bring me a correct flowchart for each method you have a question about. I will first help you get the flowchart right before I can help with any implementation issue. No flowchart, no help from me.

What you need to do:
  1. Download the code you will build on. Here is a zip file that contains a working BlueJ program which you need to complete.
  2. The code you downloaded above contains the pic package developed at Georgia Tech. It facilitates digital image processing and will allow you to implement some nice visual effects pretty easily. You need to download the documentation for this package here. The two classes you will use in this package are called Picture and Pixel. You will also need to look up the Java API documentation for the standard Color class.
  3. Study the provided MyPhotoShop.java file. You will have to properly plug in your code into this file. Make sure you understand how the array of buttons is used to build the GUI.
  4. For each part of the assignment listed below, you need to write a method that performs the corresponding effect. Design the method using a flowchart, and then implement it in the MyPhotoShop.java file itself. You must connect your new code to the GUI, namely to the buttons and event handler.
  5. When you are done with all parts, copy your complete project folder to the appropriate sub-folder on my Q drive (even though you should only have modified the MyPhotoShop.java file), and turn in a printout of only this file in class on Friday, May 5th.

Part Task Points
1. Removing a color component (GREEN or BLUE) 10
2. Darkening the picture 10
3. Taking the negative 10
4. Converting to grayscale 10
5. Left rotation 10
6. Vertical mirror 10
7. Vertical flip 10
8. Horizontal flip 10
9. Superimpose text 10
10. Fix the temple 10


Total: 100
* Bonus question 10


Total: 110


And remember objective #2!