Functionality: 58 ----------------------- 4 define getPixel and setPixel 4 constructor 7 showing an image: showing an image correctly 7 grayscale: full points if an image is converted to grayscale correctly. the lab asks that the grayscale image is created as a new Picture, thus shown in a different frame. 7 scaling: give full points if an image is scaled correctly, both up and down. 7 rotating : give full points if an image is rotated correctly 7 morphing: give full points if an image is morphed correctly. 7 swirl: give full points if an image is swirled correctly 5 the interface : give full points if Picture has an interface that lets you select the name of the pictures you want to show, and what operations you want on the picture. see lab text. the interface is either GUI (give extra points) or text, and either in class Picture or a separate class (see lab text). 3 define function main Style and Program structure: 42 ----------------------- programming style guidelines: simplicity, clarity , generality. Here are some things to check for. Take a few points off for each, depending on the gravity. -header and comments -every function should have a minimal comment to document what the function does -meaningful names for functions and also for variables -all data in a class should be private and accessed through getters and setters -define constants where necessary -no function should be too long. break it into functions. -if some piece of code is duplicated, it should be a encapsulated as a separate function. -distinguish between local variables and global (class) variables--- only use global variables when necessary - there should be no extra variables that are not used. in particular for the Image lab: - the function should do what they are supposed to do and not have side effects. - the body for each method should be relatively short, at most 20 lines. if any method is longer than that. something is wrong. the exception may be show(), if they add a menu to save etc - the overall logic should be clear. as you read the code, it should be clear how it works , who does what, and how each method works. EXTRA POINTS: at most 10-15 points for extra features, like: having a menu on the picture that allows to save or other stuff. or having a GUI instead of a text interface.