Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //---------------------------------------------------------------------------
- #include <vcl.h>
- #pragma hdrstop
- #include "projekt1.h"
- //---------------------------------------------------------------------------
- #pragma package(smart_init)
- #pragma resource "*.dfm"
- TForm2 *Form2;
- //======blok definiowania danych======
- int luk=85, wskazowka=85, lewo=90, gora=51; // deklaracja zmiennych
- float PI=3.14;
- int c,x,y,wektorDanych[30]; //deklaracja zmiennych i tworzenie wektora danych
- //---------------------------------------------------------------------------
- __fastcall TForm2::TForm2(TComponent* Owner)
- : TForm(Owner)
- {
- fstream dane( "parametry.txt", std::ios::in); // wczytywanie danych z pliku
- for (int t=0; t < 30; t++) //
- { //
- dane>>wektorDanych[t]; // wpisywanie danych do wektora jeden po drugim
- } //
- dane.close(); //
- skala();
- }
- //---------------------------------------------------------------------------
- void TForm2::skala()
- {
- Image1->Canvas->Font->Color=RGB(0,0,0);//===tło==== przekazywanie strumieni danych
- Image1->Canvas->TextOut(100,190,"0"); // textpout wypisanie tekstu na płótnie
- Image1->Canvas->TextOut(65,110,"150");
- Image1->Canvas->TextOut(105,50,"260");
- Image1->Canvas->TextOut(165,30,"350");
- Image1->Canvas->TextOut(225,50,"450");
- Image1->Canvas->TextOut(265,110,"575");
- Image1->Canvas->TextOut(245,190,"700");
- Image1->Canvas->Font->Color=clBlack; // kolor czcionki
- Image1->Canvas->Pen->Width=3; // grubosc pióra
- Image1->Canvas->MoveTo(lewo + luk, gora+luk); // przejscie w miejsce o podanych współrzzędnych
- Image1->Canvas->Pen->Color=RGB(0,180,0); // kolor pióra
- x = floor(cos(PI * (0 * 270 / 700 + 135) / 180)
- * (wskazowka - (wskazowka/100*10)) + lewo + luk); // floor - zaokrąglenie w dół; dalej obliczanie współrzędnej x
- y = floor (sin(PI* ( 0* 270/700+135)/180)
- * (wskazowka - (wskazowka/100*10)) + gora + luk);
- Image1->Canvas->LineTo(x,y);
- }
- //---------------------------------------------------------------------------
- void __fastcall TForm2::Timer1Timer(TObject *Sender)
- {
- Image1->Picture=NULL;
- skala();
- //wczytywanie danych
- Edit1->Text=wektorDanych[c]; // wyświetlenie wskazywanej wartosci w polu Edit1
- if(c>=30)
- {
- Timer1->Enabled=0; // włączenie timera
- c=0;
- Edit1->Text="";
- }
- Image1->Canvas->Pen->Width=3;
- Image1->Canvas->MoveTo(lewo + luk, gora + luk);
- Image1->Canvas->Pen->Color=RGB(0,180,0);
- x = floor(cos(PI * ((wektorDanych[c] * 270/700)+135)/180)
- * (wskazowka - (wskazowka/100*10)) + lewo + luk); // floor - zaokrąglenie w dół; dalej obliczanie współrzędnej x
- y = floor (sin(PI* ( 0* 270/700+135)/180)
- * (wskazowka - (wskazowka/100*10)) + gora + luk);
- Image1->Canvas->LineTo(x,y); // rysowanie lini prostej od współrzędnej podanej w MoveTo(lewo + luk, gora + luk) do współrzednej podanej tutaj czyli LineTo(x,y)
- c++; // inkrementacja
- }
- //---------------------------------------------------------------------------
- void __fastcall TForm2::Button1Click(TObject *Sender)
- {
- Timer1->Enabled=true; // włączenie timera
- }
- //---------------------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement