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.
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.