Project: Image Suite
Description
For this project, you will write the following series of functions
that modify a picture. For each function, the address of a picture is
passed as a parameter, so the picture passed into the function (e.g.,
from main) will be changed.
void pixelStrip(Picture* pic, char color)
This function should set the R, G,
or B field of every Pixel in the
given Picture to 0 (depending on what
character color is).
For example if
parameter color is 'G', then this procedure
should change the green component of each pixel in the picture to 0;
the red and blue components would remain unchanged.
void pictureRedder(Picture* pic)
void pictureGreener(Picture* pic)
void pictureBluer(Picture* pic)
These functions should increase the intensity of their respective color channels (red, green, or blue) and decrease the intensity of the other two. You may choose the amounts by which to change each. However, the results should never go outside the range 0…255.
void circleSelect(Picture* pic, int xCenter, int yCenter, int radius)
This function should select a circle from your picture and turn each pixel within that circle to the corresponding grayscale value.
A creative function of your choosing
This function should do something interesting and creative to a picture. It should not just be a rehashing of a previous exercise or lab, and there should be a good amount of thought and effort placed into this function.
When turning in your project, be sure to include tests and examples of pictures from each function.
Reminder
Be sure to cite any materials from which your solution is derived or by which it is influenced.
Grading
In addition to the general grading guidelines for evaluation, the project is worth 25 points.
-
[5 points] Function
pixelStripmeet specifications with JPEG examples (input and output results) included. -
[5 points]
Functions
pictureRedder,pictureGreener, andpictureBluermeet specifications with JPEG examples (input and output results) included. -
[5 points] Function
circleSelectmeets specifications with JPEG examples (input and output results) included. - [5 points] A substantive, creative function of authors' choosing is included with JPEG examples (input and output results).
- [2 points] All functions are commented, clear, concise, and coherent
- [3 points] A test driver program generates all output examples
-
Comments on Program Format, Comments, Readability, Testing, etc.
(Points not given, but points can be deducted.)
