Lucrare pentru colocviul de practica informatica an II calculatoare COTFAS VLAD CALC 2 Descriere: Aplicatia este creata cu ajutorul programului Microsoft Visual Studio 2005 CLR form application, si este folosita pentru afisarea unei sinusoide sin(x). Programul este format din 2 NumericUpDown, 4 butoane, si 4 textboxuri. Codul sursa: static int verificaregrid=1; // 0 grid off, 1 grid on, 2 grid static int scalare=0; // 0 scalare off, 1 scalare on #pragma endregion private: System::Void button1_click(system::object^ sender, // modificare obiecte this->label1->location = System::Drawing::Point(12, this- >Height-57); this->numericupdown1->location = System::Drawing::Point(70, this->height-60); this->label2->location = System::Drawing::Point(140, this- >Height-57); this->numericupdown2->location = System::Drawing::Point(220, this->height-60); this->button1->location = System::Drawing::Point(this->Width-95, this- >Height-65); this->button2->location = System::Drawing::Point(this- >Width-170, this->height-65); this->button3->location = System::Drawing::Point(this- >Width-245, this->height-65); this->button4->location = System::Drawing::Point(this- >Width-320, this->height-65); this->label3->location = System::Drawing::Point(this->Width-70, 5); this->label4->location = System::Drawing::Point(this->Width-40, 5);
switch (verificaregrid){ case 0: case 1: case 2: this->button2->text="grid off"; break; this->button2->text="grid on"; break; this->button2->text="grid"; break; // initializare System::Drawing::Graphics^ Desen=this->CreateGraphics(); System::Drawing::Pen^ Creion_rosu, ^Creion_blueD, ^Creion_blue, ^Creion_gri, ^Creion_gri_d; Creion_rosu=gcnew System::Drawing::Pen(System::Drawing::Color::Red); Creion_blueD=gcnew System::Drawing::Pen(System::Drawing::Color::DeepSkyBlue); Creion_blue=gcnew System::Drawing::Pen(System::Drawing::Color::SteelBlue); Creion_gri=gcnew System::Drawing::Pen(System::Drawing::Color::Gray); Creion_gri_d=gcnew System::Drawing::Pen(System::Drawing::Color::LightGray); Desen->Clear(System::Drawing::Color(this->BackColor)); int latime=this->width; int inaltime=this->height; double perioadasinus=system::convert::todouble(this- >numericupdown1->value); double inaltimesinus=system::convert::toint32(this- >numericupdown2->value); int factor_s=inaltime/ 2-50+System::Convert::ToInt32(inaltimeSinus); int yy=factor_s; int y=0, i=0; double x;
i,inaltime); i,inaltime); i,latime,i); i,latime,i); if(verificaregrid!=0){ for (int i=0; i<=latime; i+=10) if (i%50==0) Desen->DrawLine(Creion_gri, i, 0, else if(verificaregrid!=2) Desen->DrawLine(Creion_gri_d, i, 0, for (int i=0; i<=inaltime; i+=10) if (i%50==0) Desen->DrawLine(Creion_gri, 0, else if(verificaregrid!=2) Desen->DrawLine(Creion_gri_d, 0, 15+inaltime/2-50); Desen->DrawLine(Creion_blueD, 0, 15+inaltime/2-50, latime, Desen->DrawLine(Creion_blueD, 0, 0, 0, inaltime); do { //y=15+inaltimesinus+factor_s*(1-system::math::sin(x)); //x=i*perioadasinus*system::math::pi/100;// 0.0314; x=i*perioadasinus*system::math::pi/(latime-15); y=system::convert::toint32(15-inaltimesinus+factor_s*(1-system::math::sin(x))); Desen->DrawLine(Creion_rosu, i-1, yy, i, y); yy=y; i++; while (i<=latime); if(scalare==0){ this->button3->text="scalare off"; else if(this->numericupdown1->value>=6){ //scalare trunchiata this->button3->text="scalare on"; this->clientsize = System::Drawing::Size(System::Convert::ToInt32(perioadaSinus*100), 432);
delete Desen, Creion_rosu, Creion_blue, Creion_blueD, Creion_gri, Creion_gri_d; private: System::Void button2_click(system::object^ sender, if(verificaregrid==2) verificaregrid=0; else if(verificaregrid>=0) verificaregrid++; private: System::Void button3_click(system::object^ sender, if(scalare==1) scalare=0; else if(scalare>=0) scalare++; private: System::Void button4_click(system::object^ sender, System::Drawing::Graphics^ Desen; Desen = this->creategraphics(); Desen->Clear(System::Drawing::Color(this->BackColor)); private: System::Void numericupdown1_valuechanged(system::object^ sender, private: System::Void numericupdown2_valuechanged(system::object^ sender, private: System::Void Form1_Resize(System::Object^ sender, private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
private: System::Void Form1_Click(System::Object^ sender, this->label3->text=string::concat(control::mouseposition.x); this->label4->text=string::concat(control::mouseposition.y); ; Poze:
3