#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"*Form2;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
}int H = 150;
//---------------------------------------------------------------------------FGR[1];FGRClass::Draw()
= X + D/2*cos(B *M_PI/180);= Y +
D/2*sin(B *M_PI/180);
= X+(-3*D/4)*cos(B *M_PI/180)-(-3*D/4)*sin(B *M_PI/180);= Y+(-3*D/4)*cos(B *M_PI/180)+(-3*D/4)*sin(B *M_PI/180);
= X+(-D/2+D/32)*cos(B *M_PI/180);= Y+(-D/2+D/32)*sin(B *M_PI/180);
= X -(-D/4)*sin(B *M_PI/180);= Y+(-D/4)*cos(B *M_PI/180);
= X + D/4*cos(B *M_PI/180)-(-D/4)*sin(B *M_PI/180);= Y+(-D/4)*cos(B *M_PI/180)+D/4*sin(B *M_PI/180);
= X+3*D/4*cos(B *M_PI/180);= Y+3*D/4*sin(B *M_PI/180);
->PaintBox1->Canvas->Brush->Color=clBlack;
->PaintBox1->Canvas->Pie(X-D/2 ,Y-D/2 ,X+D/2 ,Y+D/2, M , N, M1, N1 );->PaintBox1->Canvas->Brush->Color=clWhite;->PaintBox1->Canvas->Pie(X-D/2 ,Y-D/2 ,X+D/2 ,Y+D/2, M1, N1, M, N );->PaintBox1->Canvas->Arc(X-D/2+D/32 ,Y-D/2+D/32 ,X+D/2-D/32 ,Y+D/2-D/32, M3, N3, K, L);->PaintBox1->Canvas->Arc(X-D/2+2*D/32 ,Y-D/2+2*D/32 ,X+D/2-2*D/32 ,Y+D/2-2*D/32, M3, N3, K, L);->PaintBox1->Canvas->Arc(X-D/2+3*D/32 ,Y-D/2+3*D/32 ,X+D/2-3*D/32 ,Y+D/2-3*D/32, M3, N3, K, L);->PaintBox1->Canvas->Arc(X-D/2+4*D/32 ,Y-D/2+4*D/32 ,X+D/2-4*D/32 ,Y+D/2-4*D/32, K1, L1, M3, N3);->PaintBox1->Canvas->Arc(X-D/2+5*D/32 ,Y-D/2+5*D/32 ,X+D/2-5*D/32 ,Y+D/2-5*D/32, K1, L1, M3, N3);->PaintBox1->Canvas->Arc(X-D/2+6*D/32 ,Y-D/2+6*D/32 ,X+D/2-6*D/32 ,Y+D/2-6*D/32, K1, L1, M3, N3);->PaintBox1->Canvas->Arc(X-D/2+7*D/32 ,Y-D/2+7*D/32 ,X+D/2-7*D/32 ,Y+D/2-7*D/32, K2, L2, K1, L1);->PaintBox1->Canvas->Arc(X-D/2+8*D/32 ,Y-D/2+8*D/32 ,X+D/2-8*D/32 ,Y+D/2-8*D/32, K2, L2, K1, L1);->PaintBox1->Canvas->Arc(X-D/2+9*D/32 ,Y-D/2+9*D/32 ,X+D/2-9*D/32 ,Y+D/2-9*D/32, K2, L2, K1, L1);->PaintBox1->Canvas->Arc(X-D/2+10*D/32 ,Y-D/2+10*D/32 ,X+D/2-10*D/32 ,Y+D/2-10*D/32, K3, L3 ,K2, L2);->PaintBox1->Canvas->Arc(X-D/2+11*D/32 ,Y-D/2+11*D/32 ,X+D/2-11*D/32 ,Y+D/2-11*D/32, K3, L3 ,K2, L2);->PaintBox1->Canvas->Arc(X-D/2+12*D/32 ,Y-D/2+12*D/32 ,X+D/2-12*D/32 ,Y+D/2-12*D/32, K3, L3 ,K2, L2);
}
__fastcall TForm2::Button1Click(TObject *Sender)
{[1].X = 285;[1].Y = 175;[1].D = H;[1].Vx = 0;[1].By = 0;[1].B = 0;
->Caption = "Исходное состояние" ;
}
//---------------------------------------------------------------------------__fastcall TForm2::Timer1Timer(TObject *Sender)
{
[1].B += FGR[1].By;->
Repaint();FGR[1].Draw();
}
//---------------------------------------------------------------------------__fastcall TForm2::Button3Click(TObject *Sender)
{[1].By = 5;-> Text = FGR[1].By;->Enabled = false;->Enabled = true;->Caption = "Заново" ;
}
//--------------------------------------------------------------------------__fastcall TForm2::Button7Click(TObject *Sender)
{->Enabled = true ;[1].By += 5;(FGR[1].By >=180)
{->Enabled = false;
}-> Text = FGR[1].By;( Button6->Enabled )
{ if (FGR[1].By >=0)
{->Enabled = false ;->Enabled = true ;
}-> Text = FGR[1].By;
}( Button5->Enabled )
{(FGR[1].By >=0||FGR[1].By <=180)
{->Enabled = true ;
}-> Text = FGR[1].By;
}
}
//---------------------------------------------------------------------------
__fastcall TForm2::Button8Click(TObject *Sender)
{[1].By -= 5;
(FGR[1].By <=-180)
{->Enabled = false ;
}-> Text = FGR[1].By;( Button6->Enabled )
{(FGR[1].By <=0)
{->Enabled = true ;
}-> Text = FGR[1].By;
}
( Button5->Enabled )
{(FGR[1].By <=0)
{->Enabled = false ;
}->Enabled = true ;-> Text = FGR[1].By;
}
}
//---------------------------------------------------------------------------__fastcall TForm2::Button4Click(TObject *Sender)
{[1].By = 0;-> Text = FGR[1].By;->Caption = "Пуск" ;
}
//---------------------------------------------------------------------------__fastcall TForm2::Button5Click(TObject *Sender)
{[1].By = -FGR[1].By;-> Text = FGR[1].By;:Button7;->Enabled = false;->Enabled = true;
}
//---------------------------------------------------------------------------__fastcall TForm2::Button6Click(TObject *Sender)
{[1].By = -FGR[1].By;-> Text = FGR[1].By;->Enabled = false;->Enabled = true;
}
//---------------------------------------------------------------------------__fastcall TForm2::Button2Click(TObject *Sender)
{[1].Vx =StrToFloat(Edit1 -> Text);
(FGR[1].Vx>=232||FGR[1].Vx<=0)
{(" \n ОШИБКА ЗНАЧЕНИЯ 404 \n Введите рекомендуемые значения, после чего нажмите клавишу МАСШТАБ");
return ; }if (Edit1->Text=="")
{ShowMessage (" \n ОШИБКА ЗНАЧЕНИЯ 404 \n Введите рекомендуемые значения, после чего нажмите клавишу МАСШТАБ");
return ; }if(FGR[1].Vx<=232||FGR[1].Vx>=0)
{FGR[1].D = H * (FGR[1].Vx/100);
}
}
//---------------------------------------------------------------------------__fastcall TForm2::gjgjg(TObject *Sender, System::WideChar &Key)
{((Key!=VK_BACK)&&(Key<'0'||Key>'9'))Key=0;
//---------------------------------------------------------------------------__fastcall TForm2::trththt(TObject *Sender, System::WideChar &Key)
{Key=0;
}
//---------------------------------------------------------------------------
5. ПРОВЕРКА КОРРЕКТНОСТИ РАБОТЫ ПРОГРАММЫ В
РАЗЛИЧНЫХ РЕЖИМАХ
. Рабочее окно программы с прорисованным
объектом
. На этом этапе происходит масштабирование
объекта
3. На этом этапе происходит вращение объекта
Список использованной
литературы
1. Архангельский А.Я. C++Builder 6. Справочное пособие. Книга 1.Язык C++. М.: Бином 2002 г. --- 544 ил.
2. Архангельский А.Я. C++Builder 6. Справочное пособие. Книга 2. Классы и компоненты. - М.: Бином-Пресс, 2002 г. - 528 с: ил.
. Шикин Е. В., Боресков А. В. Компьютерная графика. Динамика, реалистические изображения. М.: ДИАЛОГ МИФИ, 1996. 288 с.
. Культин Н. Б. C++ Builder в задачах и примерах. - СПб.: БХВ- Петербург, 2005. - 336 с
. Подкур М. Л., Подкур П. Н., Смоленцев Н. К. Программирование в среде Borland C++ Builder с математическими библиотеками MATLAB С/С++. - М.: ДМК Пресс, 2006.- 496 с.: ил.
. Бруно Бабэ Просто и ясно о Borland C++: Пер. с англ. - М.: БИНОМ. - 416 с.: ил.