В общем, что вышло, с графикой я разобрался, только вот одна накладка, не получается сделать часть трапеции серой..
Вот код:
Код:
void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift, int X,
int Y)
{
int r=23; //radius of circles
int X1=X+80, Y1=Y; //координаты второго круга
Image1->Canvas->Brush->Color=clWhite;
Image1->Canvas->Rectangle(0,0,Image1->Width,Image1->Height);
Image1->Canvas->Brush->Color=clGreen; //color of circles
Image1->Canvas->Ellipse(X-r,Y-r,X+r,Y+r); //left circle
Image1->Canvas->Ellipse(X1-r,Y1-r,X1+r,Y1+r); //right cicrlce
//Каркас (трапеция)
Image1->Canvas->Pen->Color=clGray;
Image1->Canvas->Brush->Color=clGray;
Image1->Canvas->MoveTo(X,Y); //начальная точка первого круга
Image1->Canvas->LineTo(X1,Y1); //линия до второго круга
Image1->Canvas->MoveTo(X1,Y1); //переход к центру второго круга
Image1->Canvas->LineTo(X1,Y1-60); //линия от 2 круга к верху
Image1->Canvas->MoveTo(X1,Y1-60); //переход к предыдущей линии
Image1->Canvas->LineTo(X+20,Y-60); //верхняя линия
Image1->Canvas->MoveTo(X+20,Y-60); //переход к линии сверху к точке слева
Image1->Canvas->LineTo(X,Y); //замыкающая линия от верха до центра 1 круга
//
Image1->Canvas->MoveTo(X+10,Y-30);//переход к точке по центру левой замыкающей линии
Image1->Canvas->LineTo(X1,Y1-30); //центральная линия в центре трапеции
Image1->Canvas->MoveTo(X+20,Y-60) ;//переход к точке к левому верхнему углу трапеции
Image1->Canvas->LineTo(X+20,Y-30); //чертеж линии от верхней левой точки к центральной линии
}