// ННГУ, ВМК, Курс "Методы программирования-2", С++, ООП
//
// tcpoint.h - Copyright (c) Гергель В.П. 26.01.2003
//
// Графические геометрические объекты - точка

#ifndef __TCPOINT_H
#define __TCPOINT_H

#include "tb_chart.h"
#include "tcroot.h"

class TChartPoint : public TChartRoot {
  protected:  // поля
    TFormValue<int> X, Y; // координаты точки
  public:
    TChartPoint (int a=0, int b=0)  { X=a; Y=b; }
    int  GetValueX(void) { return X.GetValue(); }
    int  GetValueY(void) { return Y.GetValue(); }
    void SetValueX(int val=0, char *f=NULL) { X.SetValue(val,f); }
    void SetValueY(int val=0, char *f=NULL) { Y.SetValue(val,f); }
    virtual void Show() { // визуализация объекта
      if ( IsActive() && !IsVisible() ) {
        Form1->Image1->Canvas->Pixels[X][Y] = clBlack;
        Visible = 1;
      }
    }
    virtual void Hide() { // скрытие объекта
      if ( IsActive() && IsVisible() ) {
       Form1->Image1->Canvas->Pixels[X][Y] = clWhite;
       Visible = 0;
      }
    }
    virtual void CalcParams(double t=-1) { // вычислить параметры
      if ( t >= 0 ) Active.GetValue(t);
      if ( (t >= 0) && IsActive() ) { X.GetValue(t); Y.GetValue(t); }
    }
    virtual TDatValue * GetCopy() {    // создание копии
      TChartPoint *p = new TChartPoint(X,Y);
      p->Active = Active;
      p->X = X; p->Y = Y;
      return p;
    }
};
#endif
Хостинг от uCoz