Synopsis Cross-Reference

File: Shapes.h
 1#ifndef Shapes_h_
 2#define Shapes_h_
 3
 4#include <Paths.h>
 5
 6class Shape
 7{
 8public:
 9  virtual ~Shape() {}
10  virtual void draw() = 0;
11  virtual const Path &outline() = 0;
12};
13
14class Polygon : public Shape
15{
16public:
17  Polygon();
18  virtual ~Polygone() {}
19  virtual void draw();
20  virtual const Path &outline() { return outline_;}
21private:
22  Paths::Polyline outline_;
23};
24
25class Ellipse : public Shape
26{
27public:
28  Ellipse();
29  virtual ~Ellipse() {}
30  virtual void draw();
31  virtual const Path &outline() { return outline_;}
32private:
33  Paths::Nurbs outline_;
34};
35
36#endif