// ННГУ, ВМК, Курс "Методы программирования-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