Testing

When you’ve finished this part, you can make and run Part 1 by running:

make mp2-1
./mp2-1

If execution goes smoothly, images named lighten.png, saturate.png, and scale2x.png will be created in your working directory.

The files expected-lighten.png and expected-saturate.png are provided and can be diffed with your output.

The file expected-scale2x.png is somewhat misnamed, as there are many correct solutions when you scale an image. It is not necessary to have it diff to the same image. So long as your scaling algorithm creates a reasonable scale of the original image, our autograder will see it as a reasonable scaling of the image. You can verify this by running the automated tests on Part 1.

Automated Testing

To test your code using Catch, run the following:

make test
./test

Extra Credit Submission

For a few bonus points, you can submit the code you have implemented and tested
for part one of MP 2. You must submit your work before the extra credit
deadline (given above). Although this is optional, we encourage everyone to do
this for a couple reasons:

if you get a sufficient grade on the submission, you will receive bonus
points to improve your grade.

regardless of the quality of your work, you will get feedback that can be
used to improve your grade on the required submission of MP 2.

Be sure to commit and push your work before the extra credit deadline to earn extra credit.

Part 2 (Curated): The StickerSheet Class

Lets add stickers on top of an image!

Your goal in this part of the MP is to make a StickerSheet composed of a collection of Images. To do so, you will create a class StickerSheet that will maintain an array of pointers to Image objects. Each Image in the Scene will have an index, an $$x$$-coordinate, and a $$y$$-coordinate. The member functions described below will support creating, modifying, and drawing the collection of Image stickers in the StickerSheet.

To implement the StickerSheet class, you will write a header file that contains a declaration of the StickerSheet class (StickerSheet.h) and a source file that contains the implementation of the StickerSheet class (StickerSheet.cpp).