#include #include #pragma hdrstop #include "Unit1.h" #include "rectangle.h" #include "triangle.h" vector rects; vector trs; bool flag=0; //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- void PrintTriangle(int x1,int x2,int x3, int y1,int y2,int y3) { Form1->PaintBox1->Canvas->MoveTo(x1,y1); Form1->PaintBox1->Canvas->LineTo(x2,y2); Form1->PaintBox1->Canvas->LineTo(x3,y3); Form1->PaintBox1->Canvas->LineTo(x1,y1); } //--------------------------------------------------------------------------- void __fastcall TForm1::PaintBox1MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { if (Form1->Rectangle->Checked) { rectangle ElemR; ElemR.x1=X; ElemR.x2=X-30; ElemR.y1=Y; ElemR.y2=Y-30; rects.push_back(ElemR); Form1->PaintBox1->Canvas->Rectangle(X,Y,X-30,Y-30); } if (Form1->Triangle->Checked) { triangle ElemT; ElemT.x1=X; ElemT.x2=X-30; ElemT.x3=X+30; ElemT.y1=Y; ElemT.y2=Y-30; ElemT.y3=Y+30; trs.push_back(ElemT); PrintTriangle(X,X-30,X+30,Y,Y-30,Y-30); } if (Form1->Transportation->Checked) { vector rects2; for (size_t t=0; tX) && (rects.back().x2Y) && (rects.back().y2Cursor=crHandPoint; } //--------------------------------------------------------------------------- void __fastcall TForm1::PaintBox1MouseMove(TObject *Sender, TShiftState Shift, int X, int Y) { if (flag==1) { int x1=rects.back().x1; int y1=rects.back().y1; int x2=rects.back().x2; int y2=rects.back().y2; Form1->PaintBox1->Canvas->Brush; Form1->PaintBox1->Canvas->Rectangle(x1+X,y1+Y,x2+X,y2+Y); } } //---------------------------------------------------------------------------