Агрегация – абстракция, превращающая связь между объектами в некоторый агрегированный объект.
Составной объект - набор геометрических объектов (как базовых так и составных), рассматриваемых при выполнении операций обработки как единый объект.
class TChartGroup : public TChartRoot
{
protected:
TDatList Group; // Список объектов
public:
TChartGroup() { }
void InsUnit(TChartRoot *pUnit); // Добавление
virtual void Show(); // Визуализация
virtual void Hide(); // Скрытие
virtual void CalcParams(double t = -1); // Пересчет параметров
};
Геометрический объект может быть сконструирован с использованием уже существующих объектов. Например, ломаная может быть определена через набор конечных точек составляющих отрезков
class TChartPolyline : public TChartGroup
{
public:
TChartPolyline() { }
void InsPoint(TChartRoot *pUnit); // Добавление
virtual void Show(); // Визуализация
virtual void Hide(); // Скрытие
virtual void CalcParams(double t = -1); // Пересчет параметров
};