Computer Science I

PA 05

Student's Choice


Deadline  : Tuesday, March 31st at the start of lab


Introduction

We aren't quite ready to move on and make a full blown assignment using sound files, so let's do another activity with image files. 

I consider this assignment to only be worth 20 points - 10 points each

artCollage()

Create a method called artCollage() that blends several "themed" images into a single art collage.  In some ways this is not that much different than either PA03 or PA04 - you take several different images sized, rotated, and pasted together in one final image. 

 

I use the term "art" rather loosely and you can feel free to interpret this in any way that you like as long as you meet all of the requirements spelled out below.

  1. You may make the art as big as you would like, but try to keep it reasonable so that you eliminate excess white space in the background.
  2. Your art work must consist of no FEWER than four images. 
  3. The art work must consist of at least four "effects" performed on various images.  These include, but are not limited to
  4. Each of the effects produced for the previous requirement should exist in a separate helper method that is called by artCollage() to do its job. 

 

 

andyWarhol()

Create a method called andyWarhol().  This method produces an image similar to an Andy Warhol painting by resizing and tiling the same image (provided as a parameter) multiple times and then changing the colors/hues of each image.

Unlike the first method which required multiple images, this effect only uses one image.  However, the end result should be a minimum of 3x3 as displayed above.

 

Testing your assignment

Notice that both of these methods return the new picture.  Thus, I will type

>>> setMediaPath()
>>> output = artCollage()
>>> show(output)

or
>>> setMediaPath()
>>> pic = makePicture("girls.JPG")
>>> output = andyWarhol(pic)
>>> show(output)

 

Submitting your assignment

You should create a file caled PA05.py which contains the code for your two methods plus any helper methods necessary. 

You should zip this file together with all of the pictures that you use for artCollage()

As always, you should not use show(), repaint(), setMediaPath() or pickAFile() in your code.

Submit a paper copy of PA05.py by the START of class on the due date.  Printouts not on the front desk by 10:00 AM will be considered late and will lose several points.