Shape is defined in
Shape is an abstract class, which means that
all of its member functions are pure virtual functions, and
that it's only used as a base class, i.e., no objects of type
Shape may be declared.
All of the "drawable" types in 3DLDF,
Ellipse, etc., are derived from
Deriving all of the drawable types from
Shape makes it possible
to handle objects of different types in the same way. This is
especially important in the
Picture functions, where objects of
various types (but all derived from
Shape) are accessed through
Shape. See Picture Reference.