Проектирование приложения графического редактора «ColorDraw», страница 2

Атрибуты:

protected int *x0,*y0; - координаты начальной точки примитива.

protected int *x_end,*y_end; - координаты конечной точки примитива.

protected  TColor *colorpen; - цвет примитива.

Методы:

3.1.1.  public Figure(int x1, int y1, int x2, int y2, TColor c); //получение экземпляра класса  Figure

В качестве параметра в данную функцию передается координаты начальной, конечной точки и цвет примитива.

3.1.2.  publicvirtual ~Figure();// уничтожение  экземпляра класса

Figure.

3.1.3.  public intGet_x();//возвращает значение базовой точки х0.

3.1.4.  public intGet_y();//возвращает значение базовой точки у0.

3.1.5.  publicvirtualintGet_x_end();//возвращает значение конечной точки х_end.

3.1.6.  public virtualintGet_y_end();//возвращает значение конечной точки у_end.

3.1.7.  public TColorGetColor();//возвращает цвет примитива colorpen.

3.1.8.  public virtualvoidDraw();//виртуальный метод, реализуется в потомках (конкретных примитивах), отрисовывает примитив.

3.1.9.  public virtualvoidSetColor(TColorc);//устанавливает цвет примитива с.

3.1.10.  public virtualvoidSet_xy(intx,inty);//устанавливает значения базовых точек x0, y0 равными х и у.

3.1.11.  publicvirtualvoidSet_xy_end(intx, inty);//устанавливает значения конечных точек x_end, y_end равными х и у.

Класс Figure имеет следующих наследников:

TPixel

Triangle

Square

Circle

CPolygon

3.2.  КлассTPixel: Figure.

Данный класс отвечает за организацию работы с карандашом.

Атрибуты:

public int *x0,*y0; - координаты начальной точки примитива.

public  int *x_end,*y_end; - координаты конечной точки примитива.

Методы:

3.2.1.  public TPixel(int x1, int y1, int x2, int y2, TColor c); //получение экземпляра класса TPixel

В качестве параметра в данную функцию передается координаты начальной точки x1, y1, конечной точки x2, y2 и цвет примитива c.

3.2.2.  public virtual ~TPixel();// уничтожение  экземпляра класса

TPixel.

3.2.3.  public  voidDraw();// отрисовывает точку.

Данный метод отрисовывает примитив по координатам  x0, y0.

Класс  TPixelимеет наследникаклассLine.

3.3.  Класс Line: TPixel.

Данный класс отвечает за организацию работы с линией.

Атрибуты:  нет

Методы:

3.3.1.  public Line(int x1, int y1, int x2, int y2, TColor c); //получение экземпляра класса Line

В качестве параметра в данную функцию передается координаты начальной, конечной точки и цвет примитива.

3.3.2.  public virtual ~Line();// уничтожение  экземпляра класса

Line.

3.3.3.  public  voidDraw();// отрисовывает линию.

Данный метод отрисовывает линию по координатам  x1, y1, x2, y2.

Класс  Lineимеет наследникакласс  TPolygon.

3.4.  Класс TPolygon: Line.

Данный класс отвечает за организацию работы с многоугольником.

Атрибуты:

public Line *MPolygon[100] – массив сторон многоугольника, максимальное количество сторон в многоугольнике 100.

Методы:

3.4.1.  publicTPolygon(intx1, inty1, intx2, inty2, TColorc); //получение экземпляра класса TPolygon

В качестве параметра в данную функцию передается координаты начальной, конечной точки и цвет примитива.

3.4.2.  public virtual ~TPolygon();// уничтожение  экземпляра класса  TPolygon.

3.4.3.  public  voidDraw();// отрисовывает многоугольник.

Данный метод отрисовывает массив сторон многоугольника MPolygon, которые представляют собой линии с координатами  x1, y1, x2, y2.

3.5.  Класс Square: Figure.

Данный класс отвечает за организацию работы с квадратом.

Атрибуты:

public  Line *Rebra[3] - массив сторон квадрата.

Методы:

3.5.1.  public Square(int x1, int y1, int x2, int y2, TColor c); //получение экземпляра класса Square

В качестве параметра в данную функцию передается координаты начальной, конечной точки и цвет примитива.