Description

This page describes the purpose of each of the classes in the Impressionist project. It should give you a good idea of the purpose of each of the classes and give you some insight into where to add things when extending the skeleton code.

Classes

ImpressionistView - This is where the user interface for the Impressionist program is defined. Add new widgets to your UI here.

ImpressionistModel - This class maintains the size and type of the brush, the origial image and the painted image (the canvas). (For MFC users, this corresponds to the document in the document/view architecture.)

Brush - This is a base class for each of the paint brushes. It defines the functionality that the brushes should have. Your new brushes should inherit from this class. The color that your brush paints with is also set here.

DotBrush - This is the implementation of Point Brush. It is a subclass of Brush. All your brush implementations will look like this with different GL primitive calls.

PaintView - This window is resposible for displaying the painted image (canvas) and also the interaction between the user and the canvas.

OriginalView - This class is responsible for the display of the original input images.