"> / / -
__fastcall TForm1: TForm1 (TComponent * Owner)
: TForm (Owner)
{
}
/ / -
/ / Функція для малювання лінії зі стрілкою
void DrawLine (TCanvas * Canvas, double x0, double y0, double x1, double y1, double ArrowAngle, int ArrowLen) {
=ArrowAngle * M_PI/180;
/ / Довжина основної лінііLen=sqrt ((x0-x1) * (x0-x1) + (y0-y1) * (y0-y1));
/ / Кут нахилу основної лінії
double Angle;
if (x0 == x1 && y0
} if (x0 == x1 && y0> y1) {= 3 * M_PI / 2;
} if (x0> x1 && y0 == y1) {= 0;
} if (x0
} if (x0> x1 && y0
} if (x0
=M_PI - asin ((y1-y0) / Len);
} if (x0 y1) {= M_PI-asin ((y1-y0) / Len);
} if (x0> x1 && y0> y1) {
=2 * M_PI + asin ((y1-y0) / Len);
}
x2=x1 + ArrowLen * cos (Angle + ArrowAngle);// Кінець першого пелюстки по Xy2=y1 - ArrowLen * sin (Angle + ArrowAngle);// Кінець першого пелюстки по Y
x3=x1 + ArrowLen * cos (Angle-ArrowAngle);// Кінець другого пелюстки по Xy3=y1 - ArrowLen * sin (Angle-ArrowAngle);// Кінець кінець другого пелюстки по Y
/ / малюємо саму лінію> MoveTo (x0, y0);> LineTo (x1, y1);
/ / Малюємо лепесткіpoints [3]; [0]=Point (x1, y1); [1]=Point (x2, y2); [2]=Point (x3, y3);> ; Polygon (points, 2);
}
int res=0; __fastcall TForm1: Image1MouseDown (TObject * Sender, Button, TShiftState Shift, int X, int Y)
{(res == 0) {> Image1-> Canvas-> Pen-> Color=RGB (2, 0, 0); el;. x=X;. y =Y;. number=col;. push_back (el);> Image1-> Canvas-> Ellipse (X - 10, Y - 10, X +10, Y +10);
> Image1-> Canvas-> TextOutA (X +10, Y, IntToStr (col));> Image1-> Canvas-> MoveTo (X, Y);
> StringGrid1-> RowCount=col +2;> StringGrid1-> ColCount=col +2;> StringGrid1-> Cells [col +1] [0]=IntToStr (col) ;> StringGrid1-> Cells [0] [col +1]=IntToStr (col);
(int i=1; i StringGrid1-> ColCount; i + +) {> StringGrid1-> Cells [i] [col +1]=«0»;> ; StringGrid1-> Cells [col +1] [i]=«0»;
}
col + +;
}
if (res == 1) {/ / якщо не використовуємо матрицю суміжності
this-> Image1-> Canvas-> Pen-> Color=RGB (208, 20, 201); f=false; (int i=0; i (X - 10)) && (point (points [i]). x <(X + 10)) && (point (points [i]). y> (Y - 10)) && (point (points [i]). y <(Y +10))) {(! fr ) {f=true; ir=i; fr=true; this-> Image1-> Canvas-> MoveTo (point (points [i]). x, point (points [i]). y);} {(this-> Image1-> Canvas, point ( points [ir]). x, point (p...