Tryb graficzny w Pascalu

Wielkość: px
Rozpocząć pokaz od strony:

Download "Tryb graficzny w Pascalu"

Transkrypt

1 Komputer może pracować w trybach: qq qq graficznym (ang. graphics mode), tekstowym (ang. text mode, character mode). Fachowcy nazywają grafikę tworzoną za pomocą Turbo Pascala dla środowiska MS -DOS grafiką BGI (ang. Borland Graphics Interface interfejs graficzny Borlanda). W Windows stosuje się inny interfejs graficzny GDI (ang. Graphics Device Interface), dlatego też grafikę przeznaczoną dla Windows fachowcy w żargonie nazywają grafiką GDI. Monitor komputera musi mieć odpowiedni sterownik sprzętowy nazywany kartą graficzną lub sterownikiem graficznym. Najważniejsze parametry pracy sterowników to: qq qq qq qq 6 Tryb graficzny w Pascalu liczba możliwych do wyświetlenia kolorów (tzw. paleta barw), rozdzielczość (liczba świecących punktów na ekranie, tzw. pikseli), ilość pamięci, parametry procesora graficznego (na kartach grafiki może być zainstalowany osobny procesor). Standardowe karty graficzne (stare i nowsze) obsługiwane przez Turbo Pascala to m.in.: q q VGA (ang. Video Graphics Array) typowy tryb pracy: rozdzielczość , 16 kolorów; q q SVGA (ang. Super VGA) typowy tryb pracy: rozdzielczość , ponad barw.

2 Rozdział 6 t Tryb graficzny w Pascalu 6.1. Inicjowanie trybu graficznego Przed przystąpieniem do rysowania popatrzmy na okno Turbo Pascala i poczyńmy kilka wyjściowych spostrzeżeń. 1. Tryb tekstowy jest trybem domyślnym. Zanim spróbujemy cokolwiek narysować, należy przełączyć kartę w tryb graficzny. 2. Trybów graficznych (podobnie jak trybów tekstowych) jest więcej niż jeden. Ten sam rysunek może wyglądać zupełnie inaczej w innym trybie o innej rozdzielczości. Zamiast zatem rozpoczynać tworzenie programu w sposób rutynowy (od klauzuli Uses Crt;), musimy najpierw włączyć tryb graficzny. W kompilatorach Turbo Pascal i Borland Pascal do obsługi tego trybu służą następujące (niezbędne) elementy: Uses Graph; { modul z procedurami i funkcjami graficznymi } InitGraph(); { procedura zainicjuj tryb graficzny } CloseGraph; { procedura zamknij tryb graficzny, wroc do trybu tekstowego} Procedura CloseGraph() nie potrzebuje dodatkowych informacji, zatem aby zamknąć tryb graficzny, nie musimy podawać w nawiasach żadnych argumentów. Ponieważ jednak trybów graficznych może być wiele, między nawiasami procedury InitGraph() powinniśmy umieścić dodatkowe informacje. Najprostszy sposób ich wypełnienia może wyglądać tak: gdzie: Uses Crt, Graph; Var Karta, Tryb: Integer; BEGIN Karta := Detect; InitGraph(Karta, Tryb, C:\TP\BGI ); Var Karta, Tryb: Integer; deklaracje dwóch zmiennych parametrów (tryb może zmieniać się w trakcie pracy programu); Karta identyfikator sterownika graficznego (ang. Graphics Driver); Tryb tryb graficzny (ang. Graphics Mode rozdzielczość, liczba kolorów); C:\TP\BGI katalog, w którym znajduje się sterownik *.BGI. Ponieważ komputery wolą numery niż słowa, wszystkie karty i wszystkie tryby mają predefiniowane przez producenta nazwy karty (np. VGA) i numery (np. dla kart VGA 9). Jeśli pamiętamy, że karta VGA ma numer 9, a HGC numer 7, możemy inicjować tryb graficzny, np.: Karta := 9; InitGraph( Karta,... 48

3 6.1. Inicjowanie trybu graficznego Dokładnie taki sam skutek przyniesie wywołanie procedury z użyciem predefiniowanej stałej symbolicznej: Karta := VGA; InitGraph( Karta,... Jeśli jednak zechcemy napisać program w sposób bardziej uniwersalny albo po prostu nie mamy głowy do cyferek, wygodniej namówić komputer, by sam sprawdzał, z jaką kartą ma do czynienia tam, gdzie właśnie został uruchomiony. Służy do tego predefiniowana stała Detect (równa 0). Wpisanie zera do komórki pamięci przeznaczonej na zapamiętanie parametru Karta powoduje automatyczne sprawdzenie przez procedurę InitGraph() i zapamiętanie w tymże miejscu numeru wykrytej karty. Po zadeklarowaniu zmiennych Karta i Tryb, możemy zapisać to tak: Var Karta, Tryb: Integer; BEGIN Karta := Detect; InitGraph ( Karta, Tryb,... Przygotowując się do pracy w trybie graficznym, możemy zdać się na ustawienia domyślne. Procedura InitGraph() automatycznie wybierze tryb o najwyższej możliwej dla danej karty rozdzielczości. Jeśli więc mamy na przykład kartę VGA, uzyskamy identyczny skutek, wpisując następujący kod: Karta := VGA; Tryb := VGAHi; InitGraph ( Karta, Tryb,...); Tryb VGA może być realizowany w wersjach VGAHi, VGAMed, VGALo (High, Medium, Low). Oczywiście, tryby graficzne także mają swoje identyfikatory. Przedstawia je tabela 6.1. Tabela 6.1. Wyliczenie trybów graficznych dla standardu VGA Nazwa symboliczna Identyfikator Rozdzielczość w pikselach VGAHi VGAMed VGALo W zależności od wersji albo w podkatalogu..\bgi, albo w katalogu głównym Turbo Pascal przechowuje pliki sterowników graficznych dla różnych kart. Nazwa pliku wynika z nazwy standardu graficznego, który obsługuje, a rozszerzenia mogą być dwa: q q q q *.BGI sterownik grafiki BGI dla DOS, *.CHR czcionki graficzne. 49

4 Rozdział 6 t Tryb graficzny w Pascalu Jeśli mamy kartę VGA lub SVGA, będzie potrzebny sterownik: EGAVGA.BGI. Ten plik (i ewentualnie pliki z czcionkami graficznymi, jeśli program zamierza pisać) można skopiować do bieżącego katalogu, w którym znajduje się wersja *.EXE programu, który ma korzystać z trybu graficznego. Jeśli tak zrobimy, wywołanie procedury inicjującej tryb graficzny może wyglądać tak: Karta := 9; Tryb := 2; InitGraph ( Karta, Tryb, { ); Puste apostrofy oznaczają właśnie katalog bieżący. Ponieważ na komputerze autora niniejszego podręcznika Turbo Pascal rezydował na dysku C:, w przykładach ścieżka dostępu do sterownika *.BGI ma postać: C:\TP\BGI. Użytkownik jednakże powinien dostosować zapis do konfiguracji plików i katalogów na swoim komputerze. Poniżej zaprezentowany został prosty przykład grafiki w Turbo Pascalu. Listing L601.PAS Program Bazgroly_1; Uses Crt, Graph; Var Karta, Tryb: Integer; BEGIN ClrScr; WriteLn( Tryb tekstowy, czekam 2 sekundy... ); Delay(2000); Karta:=Detect; InitGraph(Karta, Tryb, C:\TP\BGI ); OutText( Tryb VGAHi, czekam [2 sekundy]... ); Line(0,0,200,100); Delay(2000); Tryb:=Tryb - 1; InitGraph(Karta, Tryb, C:\TP\BGI ); OutText( Tryb VGAMed, czekam na [3 sekundy]... ); Line(0,0,200,100); Delay(3000); Tryb:=Tryb -1; InitGraph(Karta, Tryb, C:\TP\BGI ); OutText( Tryb VGALo, czekam [1.5 sekundy]... ); Line(0,0,200,100); Delay(1500); 50

5 6.2. Procedury graficzne Line() i Circle() CloseGraph; END. Pascal używa do wyprowadzania tekstów w trybach graficznych procedury OutText(). Wynika to z możliwości wyboru czcionek graficznych, czego procedury z grupy Write, doskonale spisujące się ze standardowymi czcionkami w trybie tekstowym, niestety nie potrafią. Program powyżej został napisany i uruchomiony w trybie karty VGA. Zwróćmy uwagę na procedurę Line() rysującą linie proste w domyślnym kolorze rysunku białym, na tle o domyślnym kolorze czarnym Procedury graficzne Line() i Circle() Narysujmy na ekranie linię i okrąg. Nazwy procedur graficznych, które będą nam do tego potrzebne, są łatwe do odgadnięcia w sposób intuicyjny Line() i Circle(). Parametry (argumenty), które musimy im przekazać przy wywołaniu, są też oczywiste. Graficzne współrzędne ekranowe dla linii mają postać: q q X1 początek linii, współrzędna pozioma (piksele liczone od lewej do prawej); q q Y1 początek linii, współrzędna pionowa (piksele liczone od góry w dół); q q X2 koniec linii, współrzędna pozioma (piksele liczone od lewej do prawej); q q Y2 koniec linii, współrzędna pionowa (piksele liczone od góry w dół). Wywołanie będzie mieć postać: Line(X1, Y1, X2, Y2); Współrzędne ekranowe graficzne (liczone od 0, a nie od 1) dla okręgu mają postać: q q X współrzędna ekranowa X środka okręgu (gdzie wbić cyrkiel?); q q Y współrzędna ekranowa Y środka okręgu (gdzie wbić cyrkiel?); q q R długość promienia okręgu w pikselach (jak rozewrzeć cyrkiel?); Wywołanie będzie mieć postać: Circle(X, Y, R); Poniżej zaprezentowano przykładowy program. Po skorygowaniu ścieżki dostępu do modułów graficznych BGI zadziała na każdym komputerze. Listing L602.PAS Program Bazgroly_2; Uses Crt, Graph; Var Karta, Tryb: Integer; BEGIN Karta := Detect; InitGraph(Karta, Tryb, C:\TP\BGI ); 51

6 Rozdział 6 t Tryb graficzny w Pascalu If (GraphResult <> grok) Then WriteLn( Nie udalo sie zainicjowac trybu graficznego! ) Else Begin Line(100, 200, 200, 200); Line(200, 200, 200, 50); Line(200, 50, 100, 200); Circle(200, 200, 30); End; Delay(3000); CloseGraph; WriteLn( Koniec trybu graficznego... ); ReadLn; END. Oprócz oczywistego wykreślania linii i okręgu wykonujemy w tym programie jeszcze jedną ważną rzecz. Sprawdzamy mianowicie, czy tryb graficzny został poprawnie zainicjowany. Wykonuje to dla nas funkcja GraphResult(), która podaje rezultat próby zainicjowania grafiki. Funkcja tym różni się od procedur, że zwraca w miejsce wywołania wynik swojego działania. Jeślibyśmy nie zastosowali skróconego zapisu wywołania funkcji GraphResult(), ten fragment programu wyglądałby tak: Var Rezultat: Integer;... Rezultat := GraphResult; If (Rezultat <> grok) Then WriteLn( Nie udalo sie zainicjowac trybu graficznego! ) Else Begin Line(100, 200, 200, 200);... Stała grok jest predefiniowana w pliku GRAPH.TPU i oznacza wynik, który powinna zwrócić funkcja GraphResult(), jeśli znajdujemy się w prawidłowo zainicjowanym trybie graficznym. 52

7 6.3. Biblioteka graficzna Turbo Pascala: GRAPH.TPU 6.3. Biblioteka graficzna Turbo Pascala: GRAPH.TPU Zestaw funkcji i procedur graficznych jest zdefiniowany w module GRAPH.TPU. Poniżej znajduje się pełna lista funkcji i procedur graficznych Turbo Pascala. q q Arc() łuk, wycinek okręgu. q q Bar() prostokąt, słupek, na przykład dla wykresów słupkowych. q q Bar3D() słupek niby-trójwymiarowy. q q Circle() okrąg. q q ClearDevice() czyszczenie ekranu graficznego. q q ClearViewPort() czyszczenie okna (część ekranu), w trybie graficznym. q q CloseGraph() zamknij tryb graficzny (wróć do trybu tekstowego). q q DetectGraph() sprawdź, jaką kartę graficzną mamy i w którym trybie graficznym właśnie pracujemy. q q DrawPoly() narysuj wielokąt. q q Ellipse() narysuj elipsę. q q FillEllipse() narysuj elipsę wypełnioną wewnątrz. q q FillPoly() narysuj wielokąt wypełniony wewnątrz. q q FloodFill() wypełnij region. Region to zamknięty, ograniczony liniami o innym kolorze obszar ekranu (np. prostokąt, koło, trójkąt itp.). Kształt regionu może być dowolny, ale wcześniej, przed zapełnieniem, trzeba określić kolor i wzór wypełniacza. q q GetArcCoords() podaj współrzędne ostatnio rysowanego łuku. q q GetAspectRatio() zwraca współczynniki skali rysunku (aspect ratio). Ponieważ proporcje rozdzielczości (w pikselach) po poziomej osi X i po pionowej osi Y są różne dla różnych kart graficznych (porównaj: Hercules i VGA), pozwala na skalowanie rysunku. q q GetBkColor() podaj bieżący kolor tła. q q GetColor() podaj bieżący kolor rysowania. q q GetDefaultPalette() ustaw domyślną paletę kolorów. q q GetDriverName() podaj nazwę sterownika graficznego (karty). q q GetFillPattern() podaj bieżący wzorek wypełniacza. q q GetFillSettings() podaj bieżący kolor i wzorek wypełniacza. q q GetGraphMode() podaj bieżący tryb graficzny. q q GetImage() zapamiętaj rysunek. q q GetLineSettings() podaj bieżący styl linii (ciągła, przerywana, grubość itp.). q q GetMaxColor() podaj najwyższy dostępny numer koloru. 53

8 Rozdział 6 t Tryb graficzny w Pascalu q q GetMaxMode() podaj najwyższy dostępny tryb graficzny (o maksymalnej rozdzielczości). q q GetMaxX() podaj maksymalną wartość współrzędnej X na ekranie. q q GetMaxY() podaj maksymalną wartość współrzędnej Y na ekranie. q q GetModeName() podaj nazwę trybu graficznego. q q GetModeRange() podaj zakres dostępnych trybów graficznych. q q GetPalette() podaj bieżącą paletę kolorów. q q GetPaletteSize() podaj wielkość palety kolorów. q q GetPixel() podaj stan wskazanego punktu na ekranie (jaki ma kolor?). q q GetTextSettings() podaj bieżące ustawienia do wyprowadzania tekstu (współrzędne, kolor, czcionka itp.). q q GetViewSettings() podaj parametry bieżącego okna graficznego (View Port Settings). q q GetX() podaj bieżącą współrzędną X kursora graficznego (niewidocznego). q q GetY() podaj bieżącą współrzędną Y kursora graficznego (niewidocznego). q q GraphDefaults() wróć do domyślnych ustawień trybu graficznego, kursor graficzny na początek ekranu. q q GraphErrorMsg() podaj komunikat (string) o błędzie grafiki w oparciu o podany numer. q q GraphResult() wynik zainicjowania trybu graficznego. q q ImageSize() wielkość rysunku. q q InitGraph() zainicjuj tryb graficzny. q q InstallUserDriver() zainstaluj sterownik graficzny użytkownika. q q InstallUserFont() zainstaluj czcionki graficzne użytkownika. q q Line() rysuj linię prostą. q q LineRel() rysuj linię prostą relatywnie do bieżącej pozycji kursora graficznego. q q LineTo() linia od bieżącej pozycji kursora do wskazanego punktu. q q MoveRel() przesuń kursor graficzny relatywnie (w stosunku do pozycji początkowej). q q MoveTo() przesuń kursor graficzny do wskazanego punktu. q q OutText() wyprowadź tekst. q q OutTextXY() wyprowadź tekst, począwszy od punktu o zadanych współrzędnych X i Y. q q PieSlice() narysuj wycinek wykresu kołowego. q q PutImage() wstaw na ekran rysunek. q q PutPixel() zapal punkt na ekranie. q q Rectangle() narysuj prostokąt. 54

9 6.3. Biblioteka graficzna Turbo Pascala: GRAPH.TPU q q RegisterBGIdriver() zarejestruj sterownik graficzny BGI. q q RegisterBGIfont() zarejestruj czcionki dla środowiska graficznego. q q RestoreCrtMode() wróć do trybu tekstowego (zwykle na chwilę). q q Sector() narysuj wypełniony wycinek elipsy/okręgu. q q SetActivePage() wybierz aktywną stronę. WSKAZÓWKA Wiele sterowników graficznych pozwala na utworzenie w pamięci kilku stron. Każda z takich stron to odwzorowanie jednego ekranu graficznego. Strona aktywna (Active Page) to ta strona, na której odbywa się rysowanie. Wszystkie operacje mogą odbywać się wyłącznie w pamięci. Visual Page lub Visible Page to ta strona, która jest na bieżąco odwzorowywana na ekranie. Jest to jedna z popularnych technik animacji obrazów (patrz: SetVisualPage()). q q SetAllPalette() zmień wszystkie kolory palety na podane. q q SetAspectRatio() ustaw skalę rysunku. q q SetBkColor() ustaw kolor tła. q q SetColor() ustaw kolor rysunku. q q SetFillPattern() ustaw wzór wypełniacza wnętrza figur i regionów. q q SetFillStyle() ustaw rodzaj wypełniacza. q q SetGraphBufSize() ustaw wielkość bufora pamięci dla grafiki. q q SetGraphMode() włącz tryb graficzny. q q SetLineStyle() ustaw rodzaj linii (ciągłe, przerywane, grube itp.). q q SetPalette() ustaw stosowaną paletę barw. q q SetRGBPalette() ustaw paletę trójskładnikową. Każdą barwę można przedstawić jako kombinację barw elementarnych R = Red (składowa czerwona), G = Green (składowa zielona), B = Blue (składowa niebieska). q q SetTextJustify() ustaw sposób wyrównywania tekstu. q q SetTextStyle() ustaw styl tekstu. q q SetUserCharSize() ustaw wielkość czcionek użytkownika. q q SetViewPort() ustaw okno graficzne na ekranie. q q SetVisualPage() wybierz stronę pamięci karty widoczną na ekranie. q q SetWriteMode() ustaw tryb nadrysowania na poprzedni rysunek. q q TextHeight() ustaw wysokość tekstu. q q TextWidth() ustaw szerokość tekstu. 55

10 Rozdział 6 t Tryb graficzny w Pascalu Prezentację możliwości biblioteki graficznej zaczniemy od procedur graficznych: Line() (linia), Circle() (okrąg), Rectangle() (prostokąt), Ellipse() (elipsa), PutPixel() (punkt). Na rys. 6.1 poniżej widać efekt działania programu z listingu L603.PAS. Listing L603.PAS Program Grafik; Uses Graph, Crt; Var X1, Y1, X2, Y2, R1, R2: Integer; Var Karta, Tryb, KodBledu: Integer; Var Xmax, Ymax: Integer; {zmienne - parametry rysunku} {parametry trybu graficznego} {parametry: maksymalne wspolrzedne} Var Licznik: Integer; BEGIN Karta := Detect; InitGraph(Karta, Tryb, C:\TP\BGI ); KodBledu := GraphResult; If KodBledu = grok Then Begin X1:=100; X2:=300; Y1:=100; Y2:=300; R1:=100; Line(X1, Y1, X2, Y2); ReadKey; Rectangle(X1, Y1, X2, Y2); Circle(X1, Y1, R1); MoveTo(X2, Y2); OutText( Tekst do wyprowadzenia... ); For Licznik:=1 To 100 Do PutPixel((Licznik*3), (Licznik*2), White); ReadLn; End Else WriteLn( Klops... Tryb graficzny mi nie wychodzi... ); ReadLn; CloseGraph; END. 56

11 6.3. Biblioteka graficzna Turbo Pascala: GRAPH.TPU Rysunek 6.1. Ekran po uruchomieniu programu w trybie VGAHi Nietrudno zauważyć, że zamiast wywoływać funkcje i procedury tak: Line(100, 100, 200, 200); Circle(100, 200, 300); zastosowaliśmy nieco inną taktykę: Var X1, Y1, X2, Y2, R1: Integer;... X1:=100; X2:=300; Y1:=100; Y2:=300; R1:=100; R2:=50; Line(X1, Y1, X2, Y2); Rectangle(X1, Y1, X2, Y2); Circle(X1, Y1, R1);... Utworzenie w pamięci zmiennych, a następnie ich przypisywanie w programie nazywa się parametryzacją programu. Wydłuża to trochę kod programu, ale pozwala później autorowi na łatwą i szybką jego modyfikację. Jeśli zechcemy, by obiekty graficzne rozmieszczone zostały na ekranie w inny sposób, wystarczy zmienić tylko jeden wiersz w kodzie, na przykład: X1:=10; X2:=200; Y1:=100; Y2:=300; R1:=20; 57

12 Rozdział 6 t Tryb graficzny w Pascalu Rysunek będzie wówczas zupełnie inny. Wart rozważenia jest też następujący fragment: MoveTo(X2, Y2); OutText( Tekst do wyprowadzenia... ); For Licznik:=1 To 100 Do PutPixel((Licznik*3), (Licznik*2), White); Dochodzi tu do manipulowania niewidocznym z natury kursorem graficznym. Choć pozostaje on niedostrzegalny na ekranie, jego położenie nie jest bez znaczenia. Korzystają z niego zarówno procedury MoveTo(), LineTo(), jak i procedury drukujące tekst. Na przykład procedura MoveTo(X2, Y2); przesuwa kursor graficzny do punktu 300, 300. Od tego właśnie punktu rozpocznie się wyprowadzanie tekstu wskazanego w procedurze OutText( Tekst do wyprowadzenia... );. Pętla programowa typu For będzie zapalać kolejne piksele, których współrzędne zostaną obliczone za pomocą wyrażeń: (Licznik*3) = 3, 6, 9, 12, 15,... (Licznik*2) = 2, 4, 6, 8, 10,... Linia punktowa widoczna na rysunku składa się z takich właśnie pikseli o współrzędnych: (3,2), (6,4), (9,6),... itd., aż do (300, 200). Zamiast prostego wywołania: PutPixel(X, Y, Kolor); użyliśmy i tu wyrażeń matematycznych. Jest to metoda bardzo przydatna przy wykreślaniu wykresów funkcji i innych nietypowych krzywych. Dla wyjaśnienia tych mechanizmów dodajmy do naszego programu elipsę i narysujmy trochę pojedynczych pikseli. Listing L604.PAS Program Grafik_2; Uses Graph, Crt; Var X1, Y1, X2, Y2, R1, R2: Integer; Var Karta, Tryb, KodBledu: Integer; Var Xmax, Ymax: Integer; {zmienne - parametry rysunku} {parametry trybu graficznego} {parametry: maksymalne wspolrzedne} Var Licznik: Integer; BEGIN Karta := Detect; InitGraph(Karta, Tryb, C:\TP\BGI ); KodBledu := GraphResult; If KodBledu = grok Then Begin X1:=100; X2:=150; Y1:=100; Y2:=300; R1:=90; R2:=50; Line(X1, Y1, X2, Y2); ReadLn; 58

13 6.3. Biblioteka graficzna Turbo Pascala: GRAPH.TPU Rectangle(X1, Y1, X2, Y2); Circle(X2, Y2, R2); Ellipse(100, 100, 0, 360, 100, 60); Ellipse(100, 100, 0, 180, 50, 30); Ellipse(X2, Y2, 45, 279, R1, R2); MoveTo(X2+100, Y2); OutText( Tekst do wyprowadzenia... ); Xmax := GetMaxX; MoveTo((Xmax div 2), (GetMaxY div 2)); OutText( X <-- Tu jest centrum ekranu! ); For Licznik:=1 To 100 Do PutPixel((Licznik*4), (1000 div Licznik), White); For Licznik:=0 To 360 Do Begin Ellipse(GetMaxX div 2, GetMaxY div 2, 0, Licznik, GetMaxX div 4, Get- MaxY div 4); Delay(50) End; End Else WriteLn( Klops... Tryb graficzny mi nie wychodzi... ); ReadLn; CloseGraph; END. Prototyp procedury rysującej elipsę wygląda tak: Ellipse(X, Y: Integer; Kąt_startowy, Kąt_końcowy: Word; Promień_po_X, Promień_po_Y: Word); Kąty startowy i końcowy podawane są w stopniach. Pętla For z zastosowanym opóźnieniem Delay() pozwoli nam spokojnie obejrzeć wykreślanie elipsy na ekranie. Zamiana mnożenia na dzielenie przy wyznaczaniu współrzędnych kolejnych pikseli powoduje, że piksele układają się w kształt hiperboli typu y = 1 / x, tyle że odwróconej, ponieważ współrzędna Y na ekranie biegnie nie z dołu do góry, lecz z góry w dół. Trzeba o tym pamiętać, gdy zamierzamy robić na ekranie jakikolwiek wykres. Xmax := GetMaxX; MoveTo((Xmax Div 2), (GetMaxY Div 2)); OutText( X <-- Tu jest centrum ekranu! ); 59

14 Rozdział 6 t Tryb graficzny w Pascalu DEFINICJA Prototyp funkcji (lub procedury), nazywany również sygnaturą, jest po prostu deklaracją funkcji (procedury). Deklaracja określa typ wartości zwracanej, nazwę i typy argumentów. Porównajmy. Oto prototypy, czyli deklaracje: Procedure P(X, Y : Integer); Function F(X, Y, Z : Real) : Real; A to definicje: P(X,Y) to procedura, F(X,Y,Z) to funkcja. Procedure P(X, Y : Integer); Begin X := X+Y; End; Function F(X, Y, Z : Real) : Real; Begin F := X*T*Z; End; Fragment ustawiający tekst na środku ekranu mógłby wyglądać i tak: Xmax := GetMaxX Div 2; Ymax := GetMaxY Div 2; MoveTo(Xmax, Ymax); OutText(... ); Ponieważ GetMaxX i GetMaxY to funkcje, a nie procedury, zwracają one wyliczoną przez siebie wartość do programu w miejsce, z którego zostały wywołane. Zmiennych pomocniczych Xmax i Ymax do przechowywania wyniku zwróconego przez funkcje nie musimy stosować. Podobnie rzecz się ma z wywołaniem procedury Ellipse(). Wartość zwracana przez funkcje może stać się bezpośrednio argumentem dla innej funkcji lub procedury. Zmienne pomocnicze do przechowywania wartości zwracanych przez funkcje nie są konieczne. Ellipse(GetMaxX Div 2, GetMaxY Div 2, 0, Licznik, GetMaxX Div 4, GetMaxY Div 4); W procedurze tej pojawiają się wyrażenia matematyczne. Przykładowo wyrażenie: GetMaxX Div 2; można wyjaśnić następująco: 1. Wywołaj funkcję GetMaxX() (podaj maksymalną dostępną współrzędną ekranową X). W przypadku emulacji karty VGA funkcja zwróci wartość

15 6.3. Biblioteka graficzna Turbo Pascala: GRAPH.TPU 2. Podziel zwróconą wartość przez 2 (ewentualnie zaokrąglając do liczby całkowitej): 639 / 2 = Wynik podstaw jako parametr przy wywołaniu Ellipse(). Wywołanie będzie więc równoważne takiemu: Ellipse(319, 239, 0, Licznik, 159, 119); Licznik będzie się zmieniać: 0, 1, 2, 3, 4,.... Ponieważ czwarty z kolei parametr oznacza kąt końcowy rysowanego wycinka elipsy, będą rysowane wycinki od kąta 0 do kąta końcowego: 0, 1, 2, 3,... stopnie itd. Dzięki temu zobaczymy rysowanie w zwolnionym tempie (rysunek 6.2). Var X, Y: Integer; {- wspolrzedne srodka elipsy } Rysunek 6.2. Elipsy i poprzednie procedury po zmianie parametrów To, że współrzędne środka elipsy powinny być liczbami całkowitymi, można wyjaśnić stosunkowo łatwo. Numery poszczególnych pikseli są to liczby całkowite. Ale w prototypie procedury Ellipse() jest również coś dziwacznego: Var KątStartowy, KątKoncowy: Word; Deklaracja takich zmiennych powinna wyglądać nie tak: lecz tak: Var Kąt1, Kąt2 : Integer; Var Kąt1, Kąt2 : Word; 61

16 Rozdział 6 t Tryb graficzny w Pascalu Czym różni się szesnastobitowa liczba całkowita typu Integer od szesnastobitowej liczby całkowitej typu Word? To proste brakiem znaku. Liczby typu Word to takie same liczby jak znane już liczby typu Integer, tyle tylko, że zawsze i z całą pewnością są dodatnie (a ściślej: nieujemne). Na nośniku elektronicznym umieszczono dodatkowe przykłady programów graficznych. Przed kompilacją i uruchomieniem należy sprawdzić, czy ścieżka dostępu do sterownika BGI jest zgodna z położeniem plików na komputerze użytkownika. ĆWICZENIA 1. Narysuj na ekranie kopertę, domek i bałwanka. 62

Wykład VII PASCAL - grafika;

Wykład VII PASCAL - grafika; Podstawy programowania Wykład VII PASCAL - grafika; 1 Procedura InitGraph() InitGraph ( var sterownik,tryb:integer; katalog:string ); biblioteka: GRAPH Służy do włączenia trybu graficznego. Możliwe sterowniki

Bardziej szczegółowo

Moduł graph w Pascalu

Moduł graph w Pascalu Moduł graph w Pascalu Wykład: uses graph, InitGraph, Detect, SetGraphMode, kolory, wypełnienia, linie, SetFillStyle, FloodFill, SetLineStyle, SetTextStyle, OutTextXY, SetTextJustify, GetMaxX, ClearDevice,

Bardziej szczegółowo

Kod źródłowy programu: program Grafika1; uses crt, graph; (1) var sterownik, tryb:smallint; (2)

Kod źródłowy programu: program Grafika1; uses crt, graph; (1) var sterownik, tryb:smallint; (2) Grafika w Pascalu. Do tej pory, tworząc programy w Pascalu, wykorzystywaliśmy jedynie tryb tekstowy. Jednak Pascal, tak jak i inne języki programowania, umoŝliwia korzystanie równieŝ z trybu graficznego.

Bardziej szczegółowo

Pascal - grafika. Uruchomienie trybu graficznego. Moduł graph. Domyślny tryb graficzny

Pascal - grafika. Uruchomienie trybu graficznego. Moduł graph. Domyślny tryb graficzny Moduł graph Pascal - grafika Pascal zawiera standardowy moduł do tworzenia obiektów graficznych linii, punktów, figur geometrycznych itp. Chcąc go użyć należy w programie (w nagłówku) wstawić deklarację:

Bardziej szczegółowo

Okna i liczby pseudolosowe

Okna i liczby pseudolosowe 8.1. Okno graficzne ViewPort Zacznijmy od rzutu oka na tabelkę graficznych funkcji i procedur bibliotecznych. Znajduje się tam procedura graficzna SetViewPort(), która służy do tworzenia okien graficznych

Bardziej szczegółowo

GRAFIKA PROGRAMOWANA W PASCALU ==================================

GRAFIKA PROGRAMOWANA W PASCALU ================================== GRAFIKA PROGRAMOWANA Cg to kompletne środowisko programistyczne do szybkiego tworzenia efektów specjalnych i grafiki o kinowej jakości w czasie rzeczywistym dla wielu platform. Ponieważ język jest niezależny

Bardziej szczegółowo

P R OGRA M OW A N I E KOMPUTERÓW Ćwiczenia laboratoryjne. TEMAT 8: Moduły standardowe

P R OGRA M OW A N I E KOMPUTERÓW Ćwiczenia laboratoryjne. TEMAT 8: Moduły standardowe Pakiet crt zawiera procedury i funkcje, które pozwalają na sterowanie trybem ekranu, kolorami, oknami i dźwiękiem. Opisy procedur są zawarte w pliku pomocy, można je wyświetlić z menu Help Standard units

Bardziej szczegółowo

Podstawy Programowania Wykład czternasty:

Podstawy Programowania Wykład czternasty: Podstawy Programowania Wykład czternasty: Grafika (modu ł Graph) cz ęść pierwsza 1. Wstęp Współczesne karty graficzne pozwalaj ą na tworzenie przestrzennej, realistycznej grafiki komputerowej. Niestety

Bardziej szczegółowo

GRAFIKA I ROZPOZNAWANIE OBRAZÓW

GRAFIKA I ROZPOZNAWANIE OBRAZÓW GRAFIKA I ROZPOZNAWANIE OBRAZÓW Podstawy programowania graficznego w środowisku MS DOS 1. Tryb tekstowy a tryb graficzny Ze względu na reprezentację wyświetlanych danych na ekranie można wyróżnić dwa tryby

Bardziej szczegółowo

Język programowania PASCAL

Język programowania PASCAL Język programowania PASCAL (wersja podstawowa - standard) Literatura: dowolny podręcznik do języka PASCAL (na laboratoriach Borland) Iglewski, Madey, Matwin PASCAL STANDARD, PASCAL 360 Marciniak TURBO

Bardziej szczegółowo

Pliki. Operacje na plikach w Pascalu

Pliki. Operacje na plikach w Pascalu Pliki. Operacje na plikach w Pascalu ścieżka zapisu, pliki elementowe, tekstowe, operacja plikowa, etapy, assign, zmienna plikowa, skojarzenie, tryby otwarcia, reset, rewrite, append, read, write, buforowanie

Bardziej szczegółowo

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu

Programowanie strukturalne. Opis ogólny programu w Turbo Pascalu Programowanie strukturalne Opis ogólny programu w Turbo Pascalu STRUKTURA PROGRAMU W TURBO PASCALU Program nazwa; } nagłówek programu uses nazwy modułów; } blok deklaracji modułów const } blok deklaracji

Bardziej szczegółowo

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy.

PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy. PoniŜej znajdują się pytania z egzaminów zawodowych teoretycznych. Jest to materiał poglądowy. 1. Instrukcję case t of... w przedstawionym fragmencie programu moŝna zastąpić: var t : integer; write( Podaj

Bardziej szczegółowo

Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup

Baltie 3. Podręcznik do nauki programowania dla klas I III gimnazjum. Tadeusz Sołtys, Bohumír Soukup Baltie 3 Podręcznik do nauki programowania dla klas I III gimnazjum Tadeusz Sołtys, Bohumír Soukup Czytanie klawisza lub przycisku myszy Czytaj klawisz lub przycisk myszy - czekaj na naciśnięcie Polecenie

Bardziej szczegółowo

Programowanie. Grafika w języku j programowania. Klasa 2 Lekcja 16 GRAFIKA

Programowanie. Grafika w języku j programowania. Klasa 2 Lekcja 16 GRAFIKA Programowanie Grafika w języku j programowania Klasa 2 Lekcja 16 GRAFIKA Wprowadzenie Analizowane dotąd d programy pracują w trybie tekstowym, czyli mogą wyświetla wietlać na ekranie tylko pewien określony

Bardziej szczegółowo

Programowanie w języku Pascal

Programowanie w języku Pascal Programowanie w języku Pascal Dr inż. Grażyna KRUPIŃSKA grazyna@novell.ftj.agh.edu.pl D-10 pokój 227 Od algorytmu do programu PROBLEM ALGORYTM PROGRAM ŹRÓDŁOWY wykonywalnego ETAPY PROGRAMOWANIA 0. WYBÓR-ZNALEZIENIE-

Bardziej szczegółowo

Programowanie w Turbo Pascal

Programowanie w Turbo Pascal Skróty: ALT + F9 Kompilacja CTRL + F9 Uruchomienie Struktura programu: Programowanie w Turbo Pascal Program nazwa; - nagłówek programu - blok deklaracji (tu znajduje się VAR lub CONST) - blok instrukcji

Bardziej szczegółowo

Wizualne systemy programowania. Wykład 11 Grafika. dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD

Wizualne systemy programowania. Wykład 11 Grafika. dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Wizualne systemy programowania Wykład 11 Grafika 1 dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD Grafika GDI+ GDI+ - Graphics Device Interface jeden z trzech podstawowych komponentów

Bardziej szczegółowo

Ćw. I Projektowanie opakowań transportowych cz. 1 Ćwiczenia z Corel DRAW

Ćw. I Projektowanie opakowań transportowych cz. 1 Ćwiczenia z Corel DRAW Ćw. I Projektowanie opakowań transportowych cz. 1 Ćwiczenia z Corel DRAW Celem ćwiczenia jest wstępne przygotowanie do wykonania projektu opakowania transportowego poprzez zapoznanie się z programem Corel

Bardziej szczegółowo

GRAFIKA. Rodzaje grafiki i odpowiadające im edytory

GRAFIKA. Rodzaje grafiki i odpowiadające im edytory GRAFIKA Rodzaje grafiki i odpowiadające im edytory Obraz graficzny w komputerze Może być: utworzony automatycznie przez wybrany program (np. jako wykres w arkuszu kalkulacyjnym) lub urządzenie (np. zdjęcie

Bardziej szczegółowo

narzędzie Linia. 2. W polu koloru kliknij kolor, którego chcesz użyć. 3. Aby coś narysować, przeciągnij wskaźnikiem w obszarze rysowania.

narzędzie Linia. 2. W polu koloru kliknij kolor, którego chcesz użyć. 3. Aby coś narysować, przeciągnij wskaźnikiem w obszarze rysowania. Elementy programu Paint Aby otworzyć program Paint, należy kliknąć przycisk Start i Paint., Wszystkie programy, Akcesoria Po uruchomieniu programu Paint jest wyświetlane okno, które jest w większej części

Bardziej szczegółowo

Grażyna Koba. Grafika komputerowa. materiały dodatkowe do podręcznika. Informatyka dla gimnazjum

Grażyna Koba. Grafika komputerowa. materiały dodatkowe do podręcznika. Informatyka dla gimnazjum Grażyna Koba Grafika komputerowa materiały dodatkowe do podręcznika Informatyka dla gimnazjum Rysunki i animacje w Edytorze postaci 1. Rysunek w Edytorze postaci Edytor postaci (rys. 1.) jest częścią programu

Bardziej szczegółowo

Przekształcanie wykresów.

Przekształcanie wykresów. Sławomir Jemielity Przekształcanie wykresów. Pokażemy tu, jak zmiana we wzorze funkcji wpływa na wygląd jej wykresu. A. Mamy wykres funkcji f(). Jak będzie wyglądał wykres f ( ) + a, a stała? ( ) f ( )

Bardziej szczegółowo

Tematy lekcji informatyki klasa 4a styczeń 2013

Tematy lekcji informatyki klasa 4a styczeń 2013 Tematy lekcji informatyki klasa 4a styczeń 2013 temat 7. z podręcznika (str. 70-72); sztuczki 4. i 5. (str. 78); Narysuj ikony narzędzi do zaznaczania i opisz je. 19 Zaznaczamy fragment rysunku i przenosimy

Bardziej szczegółowo

KGGiBM GRAFIKA INŻYNIERSKA Rok III, sem. VI, sem IV SN WILiŚ Rok akademicki 2011/2012

KGGiBM GRAFIKA INŻYNIERSKA Rok III, sem. VI, sem IV SN WILiŚ Rok akademicki 2011/2012 Rysowanie precyzyjne 7 W ćwiczeniu tym pokazane zostaną wybrane techniki bardzo dokładnego rysowania obiektów w programie AutoCAD 2012, między innymi wykorzystanie punktów charakterystycznych. Narysować

Bardziej szczegółowo

Pascal - wprowadzenie

Pascal - wprowadzenie Pascal - wprowadzenie Ogólne informacje o specyfice języka i budowaniu programów Filip Jarmuszczak kl. III c Historia Pascal dawniej jeden z najpopularniejszych języków programowania, uniwersalny, wysokiego

Bardziej szczegółowo

TWORZENIE OBIEKTÓW GRAFICZNYCH

TWORZENIE OBIEKTÓW GRAFICZNYCH R O Z D Z I A Ł 2 TWORZENIE OBIEKTÓW GRAFICZNYCH Rozdział ten poświęcony będzie dokładnemu wyjaśnieniu, w jaki sposób działają polecenia służące do rysowania różnych obiektów oraz jak z nich korzystać.

Bardziej szczegółowo

Rysowanie precyzyjne. Polecenie:

Rysowanie precyzyjne. Polecenie: 7 Rysowanie precyzyjne W ćwiczeniu tym pokazane zostaną różne techniki bardzo dokładnego rysowania obiektów w programie AutoCAD 2010, między innymi wykorzystanie punktów charakterystycznych. Z uwagi na

Bardziej szczegółowo

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki

Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Elżbieta Kula - wprowadzenie do Turbo Pascala i algorytmiki Turbo Pascal jest językiem wysokiego poziomu, czyli nie jest rozumiany bezpośrednio dla komputera, ale jednocześnie jest wygodny dla programisty,

Bardziej szczegółowo

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja cz. 1

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja cz. 1 Podstawy programowania Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja cz. 1 1 I. Składnia Składnia programu Program nazwa; Uses biblioteki; Var deklaracje zmiennych; Begin

Bardziej szczegółowo

INSTRUKCJA PUSTA. Nie składa się z żadnych znaków i symboli, niczego nie robi. for i := 1 to 10 do {tu nic nie ma};

INSTRUKCJA PUSTA. Nie składa się z żadnych znaków i symboli, niczego nie robi. for i := 1 to 10 do {tu nic nie ma}; INSTRUKCJA PUSTA Nie składa się z żadnych znaków i symboli, niczego nie robi Przykłady: for i := 1 to 10 do {tu nic nie ma}; while a>0 do {tu nic nie ma}; if a = 0 then {tu nic nie ma}; INSTRUKCJA CASE

Bardziej szczegółowo

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe

Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe Podstawy programowania Wykład II PASCAL - podstawy składni i zmienne, - instrukcje wyboru, - iteracja, - liczby losowe 1 I. Składnia Składnia programu Program nazwa; Uses biblioteki; Var deklaracje zmiennych;

Bardziej szczegółowo

Cykl lekcji informatyki w klasie IV szkoły podstawowej. Wstęp

Cykl lekcji informatyki w klasie IV szkoły podstawowej. Wstęp Cykl lekcji informatyki w klasie IV szkoły podstawowej Wstęp Poniżej przedstawiam cykl początkowych lekcji informatyki poświęconym programowi Paint. Nie są to scenariusze lekcji, lecz coś w rodzaju kart

Bardziej szczegółowo

Część II Wyświetlanie obrazów

Część II Wyświetlanie obrazów Tło fragmentu ABA-X Display jest wyposażony w mechanizm automatycznego tworzenia tła fragmentu. Najprościej można to wykonać za pomocą skryptu tlo.sh: Składnia: tlo.sh numer oznacza numer

Bardziej szczegółowo

Programowanie: grafika w SciLab Slajd 1. Programowanie: grafika w SciLab

Programowanie: grafika w SciLab Slajd 1. Programowanie: grafika w SciLab Programowanie: grafika w SciLab Slajd 1 Programowanie: grafika w SciLab Programowanie: grafika w SciLab Slajd 2 Plan zajęć 1. Wprowadzenie 2. Wykresy 2-D 3. Wykresy 3-D 4. Rysowanie figur geometrycznych

Bardziej szczegółowo

Tik Z wiadomości wstępne

Tik Z wiadomości wstępne Tik Z wiadomości wstępne Zofia Walczak 17 lutego 2014 1 Co należy wiedzieć na początku Aby rozpocząć pracę z TikZ -em należy w preambule dokumentu wczytać pakiet używając polecenia \usepackage{tikz}. Tik

Bardziej szczegółowo

Celem ćwiczenia jest zapoznanie się z podstawowymi funkcjami i pojęciami związanymi ze środowiskiem AutoCAD 2012 w polskiej wersji językowej.

Celem ćwiczenia jest zapoznanie się z podstawowymi funkcjami i pojęciami związanymi ze środowiskiem AutoCAD 2012 w polskiej wersji językowej. W przygotowaniu ćwiczeń wykorzystano m.in. następujące materiały: 1. Program AutoCAD 2012. 2. Graf J.: AutoCAD 14PL Ćwiczenia. Mikom 1998. 3. Kłosowski P., Grabowska A.: Obsługa programu AutoCAD 14 i 2000.

Bardziej szczegółowo

4. Rysowanie krzywych

4. Rysowanie krzywych 1. Operator plot y x \begin{tikzpicture} \draw[->] (-0.2,0) -- (4.2,0) node[right] {$x$}; \draw[->] (0,-1.2) -- (0,4.2) node[above] {$y$}; \draw (3,4) -- (3,3) plot coordinates{(2,3) (3,0) (4,3)}; \end{tikzpicture}

Bardziej szczegółowo

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz

Bardziej szczegółowo

Instrukcja instalacji winbgim

Instrukcja instalacji winbgim Instrukcja instalacji winbgim 1. Przegląd instalacji Instalacja winbgim polega na przekopiowaniu w odpowiednie miejsca dwóch plików: pliku biblioteki, zawierającego m.in. skompilowane funkcje (libbgi.a),

Bardziej szczegółowo

Krótki kurs obsługi środowiska programistycznego Turbo Pascal z 12 Opracował Jan T. Biernat. Wstęp

Krótki kurs obsługi środowiska programistycznego Turbo Pascal z 12 Opracował Jan T. Biernat. Wstęp Krótki kurs obsługi środowiska programistycznego Turbo Pascal 7.0 1 z 12 Wstęp Środowisko programistyczne Turbo Pascal, to połączenie kilku programów w jeden program. Środowisko to zawiera m.in. kompilator,

Bardziej szczegółowo

Szybkie tworzenie grafiki w GcIde

Szybkie tworzenie grafiki w GcIde Szybkie tworzenie grafiki w GcIde Opracował: Ryszard Olchawa Poniższy opis dotyczy aplikacji okienkowej w systemie Windows lub Linux bazującej na obiektowej bibliotece rofrm stworzonej w środowisku GcIde.

Bardziej szczegółowo

Adobe InDesign lab.1 Jacek Wiślicki, Paweł Kośla. Spis treści: 1 Podstawy pracy z aplikacją Układ strony... 2.

Adobe InDesign lab.1 Jacek Wiślicki, Paweł Kośla. Spis treści: 1 Podstawy pracy z aplikacją Układ strony... 2. Spis treści: 1 Podstawy pracy z aplikacją... 2 1.1 Układ strony... 2 strona 1 z 7 1 Podstawy pracy z aplikacją InDesign jest następcą starzejącego się PageMakera. Pod wieloma względami jest do niego bardzo

Bardziej szczegółowo

Wprowadzenie do rysowania w 3D. Praca w środowisku 3D

Wprowadzenie do rysowania w 3D. Praca w środowisku 3D Wprowadzenie do rysowania w 3D 13 Praca w środowisku 3D Pierwszym krokiem niezbędnym do rozpoczęcia pracy w środowisku 3D programu AutoCad 2010 jest wybór odpowiedniego obszaru roboczego. Można tego dokonać

Bardziej szczegółowo

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu.

Niezwykłe tablice Poznane typy danych pozwalają przechowywać pojedyncze liczby. Dzięki tablicom zgromadzimy wiele wartości w jednym miejscu. Część XIX C++ w Każda poznana do tej pory zmienna może przechowywać jedną liczbę. Jeśli zaczniemy pisać bardziej rozbudowane programy, okaże się to niewystarczające. Warto więc poznać zmienne, które mogą

Bardziej szczegółowo

VII. WYKRESY Wprowadzenie

VII. WYKRESY Wprowadzenie VII. WYKRESY 7.1. Wprowadzenie Wykres jest graficznym przedstawieniem (w pewnym układzie współrzędnych) zależności pomiędzy określonymi wielkościami. Ułatwia on interpretację informacji (danych) liczbowych.

Bardziej szczegółowo

Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego

Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego Projekt graficzny z metamorfozą (ćwiczenie dla grup I i II modułowych) Otwórz nowy rysunek. Ustal rozmiar arkusza na A4. Z przybornika wybierz rysowanie elipsy (1). Narysuj okrąg i nadaj mu średnicę 100

Bardziej szczegółowo

Delphi Laboratorium 3

Delphi Laboratorium 3 Delphi Laboratorium 3 1. Procedury i funkcje Funkcja jest to wydzielony blok kodu, który wykonuje określoną czynność i zwraca wynik. Procedura jest to wydzielony blok kodu, który wykonuje określoną czynność,

Bardziej szczegółowo

POMIARY WIDEO W PROGRAMIE COACH 5

POMIARY WIDEO W PROGRAMIE COACH 5 POMIARY WIDEO W PROGRAMIE COACH 5 Otrzymywanie informacji o położeniu zarejestrowanych na cyfrowym filmie wideo drobin odbywa się z wykorzystaniem oprogramowania do pomiarów wideo będącego częścią oprogramowania

Bardziej szczegółowo

Podstawy MATLABA, cd.

Podstawy MATLABA, cd. Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Elektroniki Przetwarzanie Sygnałów Studia Podyplomowe, Automatyka i Robotyka Podstawy MATLABA, cd. 1. Wielomiany 1.1. Definiowanie

Bardziej szczegółowo

CorelDRAW. wprowadzenie

CorelDRAW. wprowadzenie CorelDRAW wprowadzenie Źródło: Podręcznik uŝytkownika pakietu CorelDRAW Graphics Suite 12 Rysowanie linii 1. Otwórz program CorelDRAW. 2. Utwórz nowy rysunek i zapisz go w swoich dokumentach jako [nazwisko]_1.cdr

Bardziej szczegółowo

przedmiot kilka razy, wystarczy kliknąć przycisk Wyczaruj ostatni,

przedmiot kilka razy, wystarczy kliknąć przycisk Wyczaruj ostatni, Baltie Zadanie 1. Budowanie W trybie Budowanie wybuduj domek jak na rysunku. Przedmioty do wybudowania domku weź z banku 0. Zadanie 2. Czarowanie sterowanie i powtarzanie W trybie Czarowanie z pomocą czarodzieja

Bardziej szczegółowo

CorelDRAW. 1. Rysunek rastrowy a wektorowy. 2. Opis okna programu

CorelDRAW. 1. Rysunek rastrowy a wektorowy. 2. Opis okna programu 1. Rysunek rastrowy a wektorowy CorelDRAW Różnice między rysunkiem rastrowym (czasami nazywanym bitmapą) a wektorowym są olbrzymie. Szczególnie widoczne są podczas skalowania (czyli zmiany rozmiaru) rysunku

Bardziej szczegółowo

Praca w programie Power Draft

Praca w programie Power Draft Praca w programie Power Draft Tworzenie mapy cyfrowej w oparciu o wyznaczone w terenie współrzędne I. Przygotowanie foldera roboczego 1. Na ostatnim (alfabetycznie np. D) dysku komputera: - sprawdzić czy

Bardziej szczegółowo

Cel: Przypisujemy przyciskom określone funkcje panel górny (Panel1)

Cel: Przypisujemy przyciskom określone funkcje panel górny (Panel1) W odcinku III tworzyliśmy paski narzędzi. Umieszczaliśmy na panelach ikony, reprezentujące czynności (charakterystyczne dla edytorów tekstu). Musimy teraz przypisać każdemu przyciskowi jego czynność (wycinanie,

Bardziej szczegółowo

Laboratorium z Grafiki InŜynierskiej CAD. Rozpoczęcie pracy z AutoCAD-em. Uruchomienie programu

Laboratorium z Grafiki InŜynierskiej CAD. Rozpoczęcie pracy z AutoCAD-em. Uruchomienie programu Laboratorium z Grafiki InŜynierskiej CAD W przygotowaniu ćwiczeń wykorzystano m.in. następujące materiały: 1. Program AutoCAD 2010. 2. Graf J.: AutoCAD 14PL Ćwiczenia. Mikom 1998. 3. Kłosowski P., Grabowska

Bardziej szczegółowo

KATEGORIA OBSZAR WIEDZY

KATEGORIA OBSZAR WIEDZY Moduł 6 - Grafika menedżerska i prezentacyjna - od kandydata wymaga się umiejętności posługiwania się programem komputerowym do tworzenia. Zdający powinien posiadać umiejętności wykonania następujących

Bardziej szczegółowo

Wstęp do programowania. Procedury i funkcje. Piotr Chrząstowski-Wachtel

Wstęp do programowania. Procedury i funkcje. Piotr Chrząstowski-Wachtel Wstęp do programowania Procedury i funkcje Piotr Chrząstowski-Wachtel Po co procedury i funkcje? Gdyby jakis tyran zabronił korzystać z procedur lub funkcji, to informatyka by upadła! Procedury i funkcje

Bardziej szczegółowo

C Biblioteka G2. C.1 Koncepcja biblioteki G2.

C Biblioteka G2. C.1 Koncepcja biblioteki G2. C Biblioteka G2. J a c e k Ta r a s i u k C.1 Koncepcja biblioteki G2. Biblioteka graficzna G2 umożliwia tworzenie rysunków 2D z wykorzystaniem prostych funkcji rysujących. Niezwykle użyteczną cechą biblioteki

Bardziej szczegółowo

Tworzenie prezentacji w MS PowerPoint

Tworzenie prezentacji w MS PowerPoint Tworzenie prezentacji w MS PowerPoint Program PowerPoint dostarczany jest w pakiecie Office i daje nam możliwość stworzenia prezentacji oraz uatrakcyjnienia materiału, który chcemy przedstawić. Prezentacje

Bardziej szczegółowo

Zastosowania informatyki w geologii ćwiczenia 1,2 INKSCAPE 1

Zastosowania informatyki w geologii ćwiczenia 1,2 INKSCAPE 1 INKSCAPE 1 Zadanie 1 (Ctrl + shift + c konwersja kształtu na scieżkę) Narysuj kształty: Usuń cały prostokąt i połowę gwiazdy Zadanie 2 Narysuj prostokąt o wymiarach: 40x20pikseli (wysokość, szerokość),

Bardziej szczegółowo

WASM AppInventor Lab 3. Rysowanie i animacja po kanwie PODSTAWY PRACY Z KANWAMI

WASM AppInventor Lab 3. Rysowanie i animacja po kanwie PODSTAWY PRACY Z KANWAMI Rysowanie i animacja po kanwie PODSTAWY PRACY Z KANWAMI Kanwa, to komponent służący do rysowania. Można ją dodać w Designerze przeciągając komponent Canvas z sekcji Basic. W celu ustawienia obrazka jako

Bardziej szczegółowo

Podręcznik użytkownika programu. Ceremonia 3.1

Podręcznik użytkownika programu. Ceremonia 3.1 Podręcznik użytkownika programu Ceremonia 3.1 1 Spis treści O programie...3 Główne okno programu...4 Edytor pieśni...7 Okno ustawień programu...8 Edycja kategorii pieśni...9 Edytor schematów slajdów...10

Bardziej szczegółowo

EXCEL. Diagramy i wykresy w arkuszu lekcja numer 6. Instrukcja. dla Gimnazjum 36 - Ryszard Rogacz Strona 20

EXCEL. Diagramy i wykresy w arkuszu lekcja numer 6. Instrukcja. dla Gimnazjum 36 - Ryszard Rogacz Strona 20 Diagramy i wykresy w arkuszu lekcja numer 6 Tworzenie diagramów w arkuszu Excel nie jest sprawą skomplikowaną. Najbardziej czasochłonne jest przygotowanie danych. Utworzymy następujący diagram (wszystko

Bardziej szczegółowo

Podstawy Informatyki Wykład V

Podstawy Informatyki Wykład V Nie wytaczaj armaty by zabić komara Podstawy Informatyki Wykład V Grafika rastrowa Paint Copyright by Arkadiusz Rzucidło 1 Wprowadzenie - grafika rastrowa Grafika komputerowa tworzenie i przetwarzanie

Bardziej szczegółowo

Usługi Informatyczne "SZANSA" - Gabriela Ciszyńska-Matuszek ul. Świerkowa 25, Bielsko-Biała

Usługi Informatyczne SZANSA - Gabriela Ciszyńska-Matuszek ul. Świerkowa 25, Bielsko-Biała Usługi Informatyczne "SZANSA" - Gabriela Ciszyńska-Matuszek ul. Świerkowa 25, 43-305 Bielsko-Biała NIP 937-22-97-52 tel. +48 33 488 89 39 zwcad@zwcad.pl www.zwcad.pl Aplikacja do rysowania wykresów i oznaczania

Bardziej szczegółowo

Wykład PASCAL - Pliki tekstowe

Wykład PASCAL - Pliki tekstowe Podstawy programowania Wykład PASCAL - Pliki tekstowe 1 dr Artur Bartoszewski - Podstawy prograowania, sem. 1- WYKŁAD Rodzaje plików Dane przechowywane w pliku mogą mieć reprezentację binarną (taką samą,

Bardziej szczegółowo

Kurs WWW. Paweł Rajba. pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/

Kurs WWW. Paweł Rajba. pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Paweł Rajba pawel@ii.uni.wroc.pl http://pawel.ii.uni.wroc.pl/ Spis treści Obsługa obrazków w PHP Wprowadzenie Tworzenie i niszczenie obrazka Kolory Funkcje od obsługi obrazków - 1 - Wprowadzenie Przygotowanie

Bardziej szczegółowo

TEMAT : KLASY DZIEDZICZENIE

TEMAT : KLASY DZIEDZICZENIE TEMAT : KLASY DZIEDZICZENIE Wprowadzenie do dziedziczenia w języku C++ Język C++ możliwa tworzenie nowej klasy (nazywanej klasą pochodną) w oparciu o pewną wcześniej zdefiniowaną klasę (nazywaną klasą

Bardziej szczegółowo

Ćwiczenia nr 4. Arkusz kalkulacyjny i programy do obliczeń statystycznych

Ćwiczenia nr 4. Arkusz kalkulacyjny i programy do obliczeń statystycznych Ćwiczenia nr 4 Arkusz kalkulacyjny i programy do obliczeń statystycznych Arkusz kalkulacyjny składa się z komórek powstałych z przecięcia wierszy, oznaczających zwykle przypadki, z kolumnami, oznaczającymi

Bardziej szczegółowo

Ćwiczenie pochodzi ze strony

Ćwiczenie pochodzi ze strony Ćwiczenie pochodzi ze strony http://corel.durscy.pl/ Celem ćwiczenia jest poznanie właściwości obiektu Elipsa oraz możliwości tworzenia za pomocą niego rysunków. Dodatkowo, w zadaniu tym, ćwiczone są umiejętności

Bardziej szczegółowo

BSP_LCD_Clear(LCD_COLOR_WHITE); BSP_LCD_SetFont(&Font16); BSP_LCD_SetTextColor(LCD_COLOR_BLACK);

BSP_LCD_Clear(LCD_COLOR_WHITE); BSP_LCD_SetFont(&Font16); BSP_LCD_SetTextColor(LCD_COLOR_BLACK); 3. Zmiana napisu zależnie od stanu przycisku Opcja 1 czyszczenie całego ekranu (niezalecane, zajmuje więcej czasu i czyści cały ekran, ale można im pokazać żeby przekonać ich że nie każdy pomysł to dobry

Bardziej szczegółowo

Techniki wstawiania tabel

Techniki wstawiania tabel Tabele w Wordzie Tabela w Wordzie to uporządkowany układ komórek w postaci wierszy i kolumn, w które może być wpisywany tekst lub grafika. Każda komórka może być formatowana oddzielnie. Możemy wyrównywać

Bardziej szczegółowo

Programowanie w języku Python. Grażyna Koba

Programowanie w języku Python. Grażyna Koba Programowanie w języku Python Grażyna Koba Kilka definicji Program komputerowy to ciąg instrukcji języka programowania, realizujący dany algorytm. Język programowania to zbiór określonych instrukcji i

Bardziej szczegółowo

Grafika komputerowa. Dla DSI II

Grafika komputerowa. Dla DSI II Grafika komputerowa Dla DSI II Rodzaje grafiki Tradycyjny podział grafiki oznacza wyróżnienie jej dwóch rodzajów: grafiki rastrowej oraz wektorowej. Różnica pomiędzy nimi polega na innej interpretacji

Bardziej szczegółowo

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main. Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo

Bardziej szczegółowo

Księgarnia PWN: Andrzej Jaskulski - AutoCAD 2010/LT Podstawy projektowania parametrycznego i nieparametrycznego

Księgarnia PWN: Andrzej Jaskulski - AutoCAD 2010/LT Podstawy projektowania parametrycznego i nieparametrycznego Księgarnia PWN: Andrzej Jaskulski - AutoCAD 2010/LT2010+. Podstawy projektowania parametrycznego i nieparametrycznego Spis treści 1. Koncepcja i zawartość podręcznika...11 1.1. Zawartość programowa...11

Bardziej szczegółowo

Program V-SIM tworzenie plików video z przebiegu symulacji

Program V-SIM tworzenie plików video z przebiegu symulacji Program V-SIM tworzenie plików video z przebiegu symulacji 1. Wprowadzenie Coraz częściej zdarza się, że zleceniodawca opinii prosi o dołączenie do opracowania pliku/ów Video z zarejestrowanym przebiegiem

Bardziej szczegółowo

Pokaz slajdów na stronie internetowej

Pokaz slajdów na stronie internetowej Pokaz slajdów na stronie internetowej... 1 Podpisy pod zdjęciami... 3 Publikacja pokazu slajdów w Internecie... 4 Generator strony Uczelni... 4 Funkcje dla zaawansowanych użytkowników... 5 Zmiana kolorów

Bardziej szczegółowo

Rysowanie punktów na powierzchni graficznej

Rysowanie punktów na powierzchni graficznej Rysowanie punktów na powierzchni graficznej Tworzenie biblioteki rozpoczniemy od podstawowej funkcji graficznej gfxplot() - rysowania pojedynczego punktu na zadanych współrzędnych i o zadanym kolorze RGB.

Bardziej szczegółowo

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre)

Uwagi dotyczące notacji kodu! Moduły. Struktura modułu. Procedury. Opcje modułu (niektóre) Uwagi dotyczące notacji kodu! Wyrazy drukiem prostym -- słowami języka VBA. Wyrazy drukiem pochyłym -- inne fragmenty kodu. Wyrazy w [nawiasach kwadratowych] opcjonalne fragmenty kodu (mogą być, ale nie

Bardziej szczegółowo

ZAJĘCIA KOMPUTEROWE KLASA IV. Opis wymagań, które uczeń powinien spełnić, aby uzyskać ocenę:

ZAJĘCIA KOMPUTEROWE KLASA IV. Opis wymagań, które uczeń powinien spełnić, aby uzyskać ocenę: ZAJĘCIA KOMPUTEROWE KLASA IV Opis wymagań, które uczeń powinien spełnić, aby uzyskać ocenę: CELUJĄCĄ Opanował wiadomości i umiejętności wynikające z programu nauczania na ocenę bardzo dobrą i ponadto:

Bardziej szczegółowo

Pierwsze kroki z easy Soft CoDeSys. 2009 Eaton Corporation. All rights reserved.

Pierwsze kroki z easy Soft CoDeSys. 2009 Eaton Corporation. All rights reserved. Pierwsze kroki z easy Soft CoDeSys Tworzenie prostego programu Rozpoczęcie pracy 2 Tworzenie prostego programu Wybór aparatu 3 Tworzenie prostego programu Wybór języka programowania Do wyboru jest sześć

Bardziej szczegółowo

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7

Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7 5.0 5.3.3.5 Laboratorium - Monitorowanie i zarządzanie zasobami systemu Windows 7 Wprowadzenie Wydrukuj i uzupełnij to laboratorium. W tym laboratorium, będziesz korzystać z narzędzi administracyjnych

Bardziej szczegółowo

- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy

- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy - Narzędzie Windows Forms - Przykładowe aplikacje 1 Narzędzia Windows Form Windows Form jest narzędziem do tworzenia aplikacji dla

Bardziej szczegółowo

PIERWSZE URUCHOMIENIE PROGRAMU ITNC PROGRAMMING STATION

PIERWSZE URUCHOMIENIE PROGRAMU ITNC PROGRAMMING STATION PIERWSZE URUCHOMIENIE PROGRAMU ITNC PROGRAMMING STATION 1. Pobranie programu itnc 530 Programming station Program powinien być przygotowany w dostępnym w wersji edukacyjnej programu itnc 530 Programming

Bardziej szczegółowo

Grafika Komputerowa Materiały Laboratoryjne

Grafika Komputerowa Materiały Laboratoryjne Grafika Komputerowa Materiały Laboratoryjne Laboratorium 9 Inkscape: tworzenie grafik do gier (część II) Wstęp W ramach dzisiejszych zajęć poznasz techniki tworzenia pseudotrójwymiarowych elementów do

Bardziej szczegółowo

3 Biblioteka WinBGIm. 3.1 Powstanie biblioteki WinBGI(m).

3 Biblioteka WinBGIm. 3.1 Powstanie biblioteki WinBGI(m). 3 Biblioteka WinBGIm J a c e k Ta r a s i u k 3.1 Powstanie biblioteki WinBGI(m). Na początku lat 90-tych XX wieku firma Borland udostępniła pierwszą prostą bibliotekę graficzną współpracującą z jej kompilatorami

Bardziej szczegółowo

Obsługa klawiszy specjalnych

Obsługa klawiszy specjalnych 13 Obsługa klawiszy specjalnych Oprócz klawiszy alfanumerycznych na klawiaturze peceta jest sporo klawiszy specjalnych. Najlepiej stosować klawisze specjalne zgodnie z ich typowym przeznaczeniem. 13.1.

Bardziej szczegółowo

Multimedia i interfejsy. Ćwiczenie 5 HTML5

Multimedia i interfejsy. Ćwiczenie 5 HTML5 Multimedia i interfejsy Ćwiczenie 5 HTML5 Celem ćwiczenia jest poznanie nowych elementów wprowadzonych w HTML 5, do których należą m.in. video oraz canvas. Poniższy opis przedstawia sposób użycia tych

Bardziej szczegółowo

Wstawianie filmu i odtwarzanie go automatycznie

Wstawianie filmu i odtwarzanie go automatycznie Wstawianie filmu (pliku wideo) w programie PowerPoint 2003 i wyświetlanie go na pełnym ekranie Ten artykuł dotyczy odtwarzania filmów (nazywanych także plikami wideo) i opisuje sposób wykonywania następujących

Bardziej szczegółowo

Jarosław Kuchta Podstawy Programowania Obiektowego. Podstawy grafiki obiektowej

Jarosław Kuchta Podstawy Programowania Obiektowego. Podstawy grafiki obiektowej Jarosław Kuchta Podstawy Programowania Obiektowego Podstawy grafiki obiektowej Zagadnienia Grafika proceduralna grafika obiektowa Grafika WPF dualizm XAML C# Właściwości obiektów graficznych edycja właściwości

Bardziej szczegółowo

Obsługa programu Paint. mgr Katarzyna Paliwoda

Obsługa programu Paint. mgr Katarzyna Paliwoda Obsługa programu Paint. mgr Katarzyna Paliwoda Podstawowo program mieści się w Systemie a dojście do niego odbywa się przez polecenia: Start- Wszystkie programy - Akcesoria - Paint. Program otwiera się

Bardziej szczegółowo

Maskowanie i selekcja

Maskowanie i selekcja Maskowanie i selekcja Maska prostokątna Grafika bitmapowa - Corel PHOTO-PAINT Pozwala definiować prostokątne obszary edytowalne. Kiedy chcemy wykonać operacje nie na całym obrazku, lecz na jego części,

Bardziej szczegółowo

Baltie 2010 etap szkolny, zadania dla kategorie A, B

Baltie 2010 etap szkolny, zadania dla kategorie A, B Baltie 2010 etap szkolny, zadania dla kategorie A, B W tym roku konkurs w szkolnym kółku będzie zawierał 2 zadania dla kategorii A i B (Baltie 3) oraz 2 zadania dla kategorii C i D (Baltie 4 C#). Zadanie

Bardziej szczegółowo

Program graficzny MS Paint.

Program graficzny MS Paint. Program graficzny MS Paint. Program graficzny MS Paint (w starszych wersjach Windows Paintbrush lub mspaint) aplikacja firmy Microsoft w systemach Windows służąca do obróbki grafiki. SP 8 Lubin Zdjęcie:

Bardziej szczegółowo

Simba 3D LOGO. Cele zajęć: - Poznanie zasad i sposobów tworzenia procedur z parametrami. - Poznanie zasad wywoływania procedur z parametrami.

Simba 3D LOGO. Cele zajęć: - Poznanie zasad i sposobów tworzenia procedur z parametrami. - Poznanie zasad wywoływania procedur z parametrami. Simba 3D LOGO Scenariusz lekcji Dokument zawiera cykl proponowanych scenariuszy lekcji z wykorzystaniem programu dydaktycznego Simba 3D LOGO. Program ten oparty jest na edukacyjnym języku programowania

Bardziej szczegółowo

Każde wykonanie bloku instrukcji nazywamy pojedynczym przebiegiem lub iteracją pętli.

Każde wykonanie bloku instrukcji nazywamy pojedynczym przebiegiem lub iteracją pętli. Część XIII C++ Czym jest pętla? Pętla jest blokiem instrukcji, które wykonywane są w kółko (czyli po wykonaniu ostatniej instrukcji z bloku komputer wykonuje ponownie pierwszą instrukcję, później drugą

Bardziej szczegółowo

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.

Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na

Bardziej szczegółowo

Animacje z zastosowaniem suwaka i przycisku

Animacje z zastosowaniem suwaka i przycisku Animacje z zastosowaniem suwaka i przycisku Animacja Pole równoległoboku Naukę tworzenia animacji uruchamianych na przycisk zaczynamy od przygotowania stosunkowo prostej animacji, za pomocą, której można

Bardziej szczegółowo