Podstawy Programowania Wykład czternasty:
|
|
- Stefan Cybulski
- 6 lat temu
- Przeglądów:
Transkrypt
1 Podstawy Programowania Wykład czternasty: Grafika (modu ł Graph) cz ęść pierwsza
2 1. Wstęp Współczesne karty graficzne pozwalaj ą na tworzenie przestrzennej, realistycznej grafiki komputerowej. Niestety język Pascal, a konkretniej jego odmiana stwo- rzona przez firm ę Borland i udostępniona w postaci pakietu Turbo Pascal, nie pozwala na obsług ę zaawansowanych funkcji takich kart. Dostarczany wraz z tym środowiskiem modu ł graph pozwala obsługiwa ć karty graficzne w trybie zgodności ze standardem VGA udostępniając kilka trybów graficznych o względnie małej rozdzielczości (maksimum 1024x768 pikseli) i liczbie kolorów (maksimum 256) 1. Istnieje możliwo ść dostępu do trybów graficznych o wyższych rozdzielczościach i większej liczbie kolorów, ale wymaga ona użycia przerwa ń BIOS i nie będzie ona tu opisywana 2. Pomimo skromnych możliwości modu ł graph może by ć przydatny do uzyskania kilku ciekawych efektów graficznych i do zwiększenia atrakcyjności wizualnej napisanych w języku Pascal programów. 2. Ogólny opis modułu graph Pomimo, że możliwości graficzne, jakie oferuje modu ł graph ze współczesnego punktu widzenia s ą dosy ć skromne, to jego rozmiary s ą dosy ć znaczne. Elementy w nim zgromadzone możemy podzieli ć na cztery kategorie: związane z inicjalizacj ą trybu graficznego, związane z zarządzaniem trybem graficznym, związane z wyświetlaniem obrazu i związane z wyświetlaniem tekstu. Najwa- żniejsze z nich zostan ą omówione w następnych rozdziałach. 3. Elementy modułu graph związane z inicjalizacj ą trybu graficznego Inicjalizacja trybu graficznego (pierwsze włączenie) dokonywane jest za pomocą procedury InitGraph. Przyjmuje ona trzy argumenty wywołania. Pierwsze dwa s ą typu integer i musz ą by ć zmiennymi, ostatni jest typu string i może być zmienn ą lub ciągiem znaków. Pierwszy parametr wywołana określa sterownik, jaki ma zosta ć użyty do uruchomienia trybu graficznego. W module graph zostały zdefiniowane stałe pozwalające określi ć rodzaj sterownika. Oto niektóre z nich: Detect (0) procedura initgraph automatycznie 3 rozpozna kart ę graficz- n ą jaka zainstalowana jest w systemie, dobierze dla niej odpowiedni sterownik i wybierze najlepszy tryb wyświetlania, CGA (1) sterownik dla karty CGA, lub 1 Podane wartości maksymalne odnosz ą si ę do karty IBM851, rzadko obecnie spotykanej. 2 Tryby o wyższych rozdzielczościach nale żą do standardu VESA. Więcej o tych trybach i sposobach ich używania można przeczyta ć w książce autorstwa P.Metzgera i A.Jełowickiego pt Anatomia PC lub Tworzenie gier 2D i 3D w języku Turbo Pascal autorstwa Piotra Besty. 3 lub jak niektórzy wol ą automagicznie :-) 2
3 zgodnej z tym standardem, EGA (3) i EGA64 (4) sterowniki kart EGA, lub zgodnych z tym standardem, EGAMono - sterownik monochromatycznych kart EGA, lub zgodnych z tym standardem, HercMono (7) sterownik kart Hercules lub zgodnych z tym standardem, VGA (9) sterownik kart VGA lub zgodnych z tym standardem. Poniewa ż wszystkie współcześnie produkowane karty są zgodne ze standardem VGA najlepiej jest używa ć sterownika tej karty lub pozwoli ć procedurze initgraph automatycznie wykry ć rodzaj sterownika. Drugi parametr określa tryb graficzny jaki ma zosta ć użyty. Każdy z wymienionych wcześniej rodzajów kart graficznych oferuje kilka różnych trybów graficznych. Ze względów pragmatycznych zapoznamy si ę tylko z trybami oferowanymi przez karty VGA i zgodne z nimi. Karty te oferuj ą trzy tryby. Zostały zdefiniowane od- powiednie stałe w module graph, które ułatwiaj ą wybór tych trybów: VGALo (0) tryb wyświetlania o rozdzielczości 640x200 pikseli, 16 kolorach i 4 stronach, VGAMed (1) tryb o rozdzielczości 640x350 pikseli, 16 kolorach i 2 stronach, VGAHi (2) tryb o rozdzielczości 640x480 pikseli, 16 kolorach i jednej stronie. Piksel jest najmniejszym pojedynczym punktem, który można wyświetli ć na ekranie w trybie graficznym. Pierwsza liczba w oznaczeniu rozdzielczości oznacza liczb ę pikseli w poziomie, a druga w pionie. Strony s ą użyteczne w tworzeniu animacji. Jedna strona może by ć w danej chwili wyświetlana, podczas gdy na pozostałych tworzone s ą kolejne klatki animacji. Trzecim parametrem wywołania procedury initgraph jest ścieżka dostępu do katalogu, w którym znajduje si ę plik ze sterownikiem do karty graficznej (zazwyczaj pliki sterowników kart graficznych s ą umieszczone w katalogu BGI, który jest podkatalogiem katalogu, w którym znajduje si ę kompilator). Jeśli plik sterownika 4 znajduje si ę w katalogu bieżącym, to wystarczy jako ścieżk ę do- stępu poda ć pusty łańcuch znaków (''). Jeśli zmiennej, która będzie pierwszym argumentem wywołania przypiszemy warto ść stałej Detect, to procedura initgraph wywoła inn ą procedur ę o nazwie DetectGraph, celem wykrycia optymalnego sterownika i trybu graficznego. Procedura ta przyjmuje jako parametry wywołania dwie zmienne typu integer. W pierwszej zapisuje numer sterownika, w drugiej numer trybu graficznego. T ę procedur ę możemy również wywoła ć samodzielnie, przed wywołaniem initgraph, cho ć nie jest to często stosowane rozwiązanie. Jeśli po włączeniu trybu graficznego zachodzi koniecz- no ść chwilowego skorzystania z trybu tekstowego, to możemy dokonać przełączenia trybów za pomoc ą procedury RestoreCrtMode, która nie przyjmuje żadnych parametrów wywołania. Przywracany jest tryb tekstowy, który by ł używany przed włączeniem trybu graficznego. Aby powróci ć do trybu graficznego wywołujemy procedur ę SetGraphMode. Przyjmuje ona tylko jeden parametr wywołania i może nim by ć zmienna, wyrażenie lub wartość 4 W przypadku kart VGA i kompatybilnych plik sterownika nazywa si ę EGAVGA.BGI. 3
4 określająca numer trybu graficznego. Najczęściej stosuje si ę jedn ą z opisanych wyżej stałych. Jeśli chcemy skończy ć prac ę w trybie graficznym, to wywołujemy procedur ę CloseGraph. Nie wymaga ona żadnych parametrów wywołania. Typowa procedura inicjalizująca tryb graficzny może mie ć następując ą posta ć: procedure inicjalizuj; var sterownik,tryb,kod:integer; begin sterownik:=detect; initgraph(sterownik,tryb,'c:\tp\bgi'); kod:=graphresult; if kod <> grok then begin grapherrormsg(kod); halt(1); Działanie funkcji graphresult i grapherrormsg zostanie opisane w następnym rozdziale. Jeśli użyjemy tej procedury, to musimy zapewni ć, że sterownik karty graficznej znajdzie si ę w określonym przez trzeci parametr wywołania proce- dury katalogu. Jeżeli chcemy unikn ąć tego dosy ć niewygodnego rozwiązania możemy plik sterownika dołączy ć do pliku wykonywalnego naszego programu. Procedura inicjalizuj w tym wypadku powinna mie ć następując ą posta ć: procedure EGAVGAdriver; external; {$L EGAVGA.OBJ } procedure inicjalizuj; var grdriver,grmode:integer; begin grdriver:=detect; registerbgidriver(@egavgadriver); initgraph(grdriver,grmode,''); if graphresult<>grok then halt(1); 4
5 Przed definicj ą tej procedury powinna by ć zadeklarowana procedura sterow- nika karty. Jest to procedura zewnętrzna 5, zdefiniowana w innym pliku. O tym jak si ę nazywa ten plik informujemy kompilator za pomoc ą dyrektywy $L, tak jak to jest pokazane w kodzie źródłowym. W procedurze inicjalizuj przed wywo- łaniem initgraph wywołujemy procedur ę RegisterBGIDriver. Jako parametr 6 wywołania przyjmuje ona wskaźnik na procedur ę sterownika. Plik EGAVGA.OBJ uzyskujemy z pliku EGAVGA.BGI konwertując go za pomocą programu binobj dostarczanego wraz ze środowiskiem Turbo Pascala. W przypadku opisywanego pliku sterownika program ten wywołujemy z wiersza polece ń następująco: binobj egavga.bgi egavga.obj EGAVGAdriver 4. Elementy modułu graph związane z organizacj ą pracy w trybie graficznym Użyta w procedurze inicjalizującej funkcja GraphResult zwraca kod poprawno- ści wykonania operacji graficznej, przeprowadzonej bezpośrednio przed jej wywołaniem. Jeśli operacja ta zakończyła si ę pomyślnie, to zwracana jest warto ść 0 (zero), jeśli nie warto ść różna od zera. W module graph zostały zdefiniowane stałe odpowiadające wartościom sygnalizującym poszczególne błędy. Wartości zero odpowiada stała grok. Nazwy pozostałych stałych nie będ ą tu przytaczane. Jeśli chcemy uzyska ń komunikat (w języku angielskim) opisujący rodzaj błędu, to możemy wywoła ć procedur ę GraphErrorMsg. Przyjmuje ona jeden parametr wywołania będący wartości ą, wyrażeniem lub zmienn ą oznaczając ą kod błędu. Funkcja graphresult współpracuje między innymi z następującymi podprogramami modułu graph: bar, bar3d, clearviewport, closegraph, detectgraph, drawpoly, fillpoly, getgraphmode, imagesize, initgraph, pieslice, registerbgidriver, setallpalette, setfillpattern, setfillstyle, setgraphbufsize, setgraphmode, setlinestyle, settextjustify, settextstyle. Aby pozna ć nazw ę trybu graficznego w którym pracujemy, lub który nas interesuje, możemy posłuży ć si ę funkcj ą GetModeName. Jako parametr wywołania pobiera ona numer trybu, którego nazw ę chcemy uzyska ć, a zwraca warto ść typu string, zawierając ą nazw ę trybu. Tworząc obraz w trybie graficznym posługujemy si ę współrzędnymi. Układ współrzędnych we wszystkich trybach graficznych jest zorganizowany tak, jak pokazano to na rysunku: 5 O tym informuje słowo kluczowe external. 6 Inaczej adres procedury. Wskaźniki będ ą tematyk ą następnych wykładów. 5
6 0 maxx 0 maxy Aby pozna ć warto ść maksymalnej rzędnej i odciętej w bieżącym trybie graficz- nym użyjemy funkcji s ą typu GetMaxX i GetMaxY. Wartości zwracane przez te funkcje integer. Procedura GetModeRange zwraca numery trybów o najmniejszej i największej rozdzielczości dla danego sterownika. Przyjmuje ona trzy parametry wywołania. Pierwszym jest zmienna, wyrażenie lub warto ść typu integer będąca numerem sterownika. Jeśli chcemy pozna ć wymienione tryby dla bieżącego sterownika, to pierwszym parametrem wywołania getmoderange może by ć stała CurrentDriver (-128). Dwa następne parametry s ą zmiennymi typu integer. Pierwsza będzie zawierała numer trybu o najmniejszej rozdzielczo- ści, druga o największej. Jeśli chcemy operacje graficzne związane z rysowa- niem lub wyświetlaniem tekstu ograniczy ć tylko do pewnego wycinka po- wierzchni ekranu, to możemy zdefiniowa ć okno, które w języku angielskim na- zwane zostało viewport. Do tworzenia takiego okna służy procedura SetViewPort. Przyjmuje ona pi ęć argumentów wywołania. Pierwsze cztery są typu integer, ostatni typu boolean. Pierwsza para argumentów wywołania to współrzędne lewego, górnego rogu okna, druga to współrzędne prawego dolnego rogu okna. Ostatni parametr określa, czy umieszczane w oknie elementy mogą wystawa ć poza okno, czy nie. Jeśli ma on warto ść true, to rysowanie ograniczone jest tylko do obszaru okna. Zamiast bezpośrednio stosowa ć war- tości true i false możemy uży ć stałych ClipOn (true) i ClipOff (false). Do wyczyszczenia bieżącego okna używamy procedury ClearViewPort, która nie przyjmuje żadnych parametrów wywołania. Aby pozna ć parametry bieżącego okna możemy posłuży ć si ę procedur ą GetViewSettings. Przyjmuje ona tylko jeden parametr wywołania będący zmienn ą typu ViewPortType. ViewPortType = record x1,y1,x2,y2:integer; Clip: boolean; 6
7 Powyżej podana jest definicja tego typu w module graph. Pola x1, y1, x2, y2 są przeznaczone do przechowywania wartości współrzędnych odpowiednich rogów okna, natomiast pole Clip informuje, o tym, czy wyświetlanie jest ograniczone do obszaru okna, czy te ż nie. Do czyszczenia zawartości całego ekranu jest używana procedura ClearDevice, która nie przyjmuje żadnych parametrów wywołania. Kursor w trybie graficznym jest niewidoczny. Aby pozna ć jego położenie możemy uży ć funkcji GetX i GetY. Obie te funkcje zwracaj ą wartości typu integer i nie pobjeraj ą żadnych parametrów wywoł ania. Współrzędne kursora s ą liczone względem bieżącego okna. Aby umieści ć kursor w wybranym miejscu na ekranie wywołujemy procedur ę MoveTo. Przyjmuje ona dwa argumenty wywołania, które mog ą by ć zmienn ą, wyrażeniem lub wartością typu integer i które stanowi ą współrzędne nowego położenia kursora. Dzięki procedurze MoveRel mamy możliwo ść przemieszczenia kursora o pewien ustalony przez nas wektor, względem bieżącego jego położenia 7. Procedura ta równie ż przyjmuje dwa parametry typu integer, które s ą odpowiednio składową poziom ą i pionow ą wektora. Jeśli korzystamy z mechanizmu stron do tworzenia animacji, to procedura SetActivePage określa nam stron ę, na której będzie rysowana bieżąca klatka, a SetVisualPage, stron ę, która będzie wyświetlana. Obie procedury przyjmuj ą jeden parametr wywołania, który jest typu word i który jest numerem strony. Jeśli używamy sterowników do kart EGA, EGA64 lub VGA, to równocześnie na ekranie możemy wyświetli ć 16 kolorów. W module graph zdefiniowano stałe o odpowiednich nazwach dla każdego z nich (są dokładnie takie same, jak w module crt). Istnieje ponadto możliwo ść stworzenia swojej palety barw. Oferuje j ą procedura SetAllPalette. Przyjmuje ona za parametr wywołania zmienn ą typu PaletteType. Ten typ w module graph zosta ł zdefiniowany następująco: PaletteType = record Size : Byte; Colors : array[0..maxcolors] of ShortInt; gdzie stała MaxColors ma warto ść 15. Pole Size określa rozmiar palety kolorów, czyli ile elementów tablicy Colors będzie miało znaczące wartości. Warto ść elementu określa numer koloru. Oznacza to, że jeśli np. w elemencie tej tablicy o indeksie 0 (czarny) umieszcz ę warto ść 4 (zielony), to elementy, które dotychczas rysowałbym na czarno będ ę rysowa ł na zielono. Aby zmienić tylko jeden kolor w palecie możemy uży ć zamiast SetAllPalette procedury 7 Np. cztery piksele w prawo i dwa w dó ł. 7
8 SetPalette. Przyjmuje ona dwa parametry wywołania jeden typu word, drugi typu shortint i s ą to: numer koloru który ma by ć zmieniony i numer koloru na jaki ten kolor chcemy zmieni ć. Na bardziej elastyczn ą manipulacj ę kolorami palety pozwala nam procedura SetRGBPalette. Przyjmuje ona cztery argumenty wywołania, wszystkie typu integer. Pierwszym jest numer koloru w palecie, który ma by ć zmieniony, a następne trzy określaj ą, odpowiednio, składow ą czerwon ą, zielon ą i niebiesk ą tego koloru. Należy zauważy ć, że tylko wartości młodszych bajtów, trzech ostatnich parametrów s ą używane przez tę procedur ę. Funkcja GetMaxColor zwraca warto ść typu word określającą maksymalny numer koloru dla bieżącego trybu graficznego. Do określenia koloru, w jakim będ ą wyświetlane elementy obrazu służy procedura SetColor, natomiast do określenia koloru tła na jakim te elementy będ ą rysowane służy procedura SetBkColor. Obie one przyjmuj ą jeden parametr wywołania, który jest typu word. Funkcje GetColor i GetBkColor zwracaj ą wartości typu word będące numerami bieżących kolorów odpowiednio: rysowanych elementów i tła. Procedura SetWriteMode określa sposób rysowania obrazu, a właściwie sposób nakładania go na istniejące tło. Przyjmuje ona tylko jeden parametr wywołania typu integer. Najczęściej parametrem tym jest jedna z następujących stałych: NormalPut lub CopyPut (0) oznaczaj ą, że element będzie po prostu zastępowa ł fragment tła na którym będzie rysowany, XORPut (1) oznacza, że będzie wykonywana operacja xor dla każdego piksela rysowanego elementu i odpowiadającego mu piksela tła, na którym jest rysowany, OrPut (2) podobnie jak poprzednio, ale wykonywana jest operacja or, AndPut (3) wykonywana jest operacja and, NotPut każda warto ść piksela (kolor) jest negowana przed narysowaniem elementu. Do uzyskania numeru koloru piksela o wybranych współrzędnych możemy uży ć funkcji GetPixel. Przyjmuje ona dwa parametry wywołania, typu natomiast zwraca warto ść typu integer, które określaj ą rzędn ą i odcięt ą piksela, word, która jest numerem koloru piksela. Do pobrania bieżącej palety kolorów służy procedura GetPalette, która przyjmuje jako parametr wywołania jedn ą zmienn ą typu PaletteType. Rozmiar palety (liczb ę dostępnych kolorów) możemy pozna ć wywołując funkcję bezparametrow ą o nazwie GetPaletteSize. Zwraca on warto ść typu integer. Procedura SetLineStyle pozwala określi ć styl rysowanej linii. Procedura ta przyjmuje trzy argumenty wywołania, wszystkie typu word. Pierwszy z nich określa rodzaj stylu i może by ć następując ą sta łą: SolidLn (0) linia ciągła, DottedLn (1) linia kropkowana, CenterLn (2) linia symetrii (używana w rysunkach technicznych), DashedLn (3) linia kreskowana, UserBitLn (4) stała pozwalająca określi ć własny rodzaj linii. Jeśli jest ona podana jako pierwszy parametr wywołania SetLineStyle, to ma znaczenie warto ść drugiego parametru wywołania tej procedury. Jest to tzw. wzorzec bitowy linii (0 piksel 8
9 wygaszony, 1 piksel zapalony). Trzeci parametr określa grubo ść linii i najczęściej jest jedn ą z dwóch stałych: NormWidth (1) normalna szerokość linii, ThickWidth (3) linia pogrubiona. Niektóre z figur lub bry ł w trybie graficzny s ą rysowane wypełnione, inne można wypełni ć. Rodzaj wypełnienia można określi ć za pomoc ą procedury SetFillStyle, przyjmującej dwa parametry wywołania, oba typu word. Pierwszy z nich jest numerem wzorca, drugi numerem koloru wypełnienia. Istnieje możliwo ść zdefiniowania własnego wzorca wypełnienia, za pomoc ą procedury SetFillPattern. Przyjmuje ona dwa argumenty wywołania. Pierwszy jest typu FillPatternType, drugi jest typu word i okreś la kolor wzorca. Typ FillPatternType jest zdefiniowany w module graph następująco: FillPatternType = array [1..8] of Byte; Warto ść każdego elementu tej tablicy jest traktowana jako wzorzec bitowy zapisany w wierszu macierzy o rozmiarach 8x8. Jeśli rysowane na ekranie koło lub okrąg wydaj ą si ę nam eliptyczne, możemy t ę wad ę skorygowa ć używając funkcji SetAspectRatio, która ustala stosunek szerokości do wysokości ekranu. Przyjmuje ona dwa argumenty wywołania typu word określające nową szeroko ść i wysoko ść ekranu i zwraca równie ż warto ść typu word. Niestety dokumentacja elektroniczna nie podaje znaczenia tej wartości. Najczęściej jest ona w programach ignorowana. Do poznania stosunku szerokości i wysokości ekranu służy procedura GetAspectRatio, która pobiera jako parametry wywołania dwie zmienne typu word. Do tych zmiennych zostanie zapisana po wywołaniu procedury odpowiednio szeroko ść i wysoko ść ekranu. 5. Elementy modułu graph służące do tworzenia obrazu Modu ł graph dostarcza wielu podprogramów służących do tworzenia prostych obiektów graficznych (zwanych w grafice komputerowej prymitywami) oraz do tworzenia bardziej złożonych elementów obrazu. Najprostszym elementem obrazu komputerowego w trybie graficznym jest piksel. Możemy narysowa ć pojedynczy piksel, określając jego kolor za pomoc ą procedury PutPixel. Przyjmuje ona trzy parametry wywołania. Pierwsza para tych parametrów jest typu integer i określa współrzędne piksela (odpowiednio rzędn ą i odcięt ą), natomiast trzeci parametr jest typu word i określa kolor jaki piksel ma przyj ąć. Odcinek jest obiektem graficznym złożonym z punktów, czyli pikseli. Taki odcinek możemy narysowa ć za pomoc ą jednej z trzech procedury. Procedura Line przyjmuje cztery parametry typu integer, które s ą współrzędnymi punku początkowego i końcowego odcinka. Procedura LineTo rysuje odcinek od 9
10 punktu, w którym bieżąco znajduje si ę kursor, do punktu o podanych współrzędnych. Współrzędne te s ą przekazywane za pomoc ą dwóch parametrów wywołania typu integer. Na podobnej zasadzie działa procedura LineRel, ale jako parametry przyjmuje długo ść poziom ą i pionow ą wektora 8, który posłuży do wyliczenia punktu końcowego odcinka. Współrzędne tego punku s ą liczone względem bieżącego położenia kursora. Do narysowania prostokąta możemy si ę posłuży ć procedur ą rectangle, która przyjmuje cztery parametry typu integer określające położenie lewego górnego i prawego dolnego rogu rysowanego prostokąta. Jeśli chcemy, żeby ten prostokąt by ł wypełniony, to zamiast procedury rectangle użyjemy procedury bar wywoływanej w identyczny sposób (z dokładności ą do nazwy). Do rysowania okręgów na ekranie służy procedura Circle. Dwa pierwsze parametry wywołania tej procedury określaj ą współrzędne środka tego okręgu (s ą typu integer), natomiast ostatni parametr jest typu word i określa długo ść promienia okręgu. Fragment okręgu, czyli łuk możemy narysowa ć za pomoc ą procedury Arc. Przyjmuje ona pi ęć parametrów. Pierwsze dwa s ą typu integer i określają współrzędne środka okręgu, którego wycinek stanowi rysowany łuk. Ostatni parametr typu word określa promie ń tego okręgu, natomiast trzeci i czwarty parametr s ą typu word i określaj ą kąt początkowy, od którego jest rysowany łuk i kąt końcowy. Miara obu kątów jest wyrażona w stopniach. Jeśli chcemy, aby nasz łuk by ł wypełniony, to używamy procedury PieSlice 9 wywoływanej w ten sam sposób. Do rysowania elips lub ich fragmentów służy procedura Ellipse. Przyjmuje ona sze ść parametrów wywołania. Pierwsze dwa s ą typu integer, cztery kolejne s ą typu word. Dwa pierwsze to współrzędne środka elipsy, dwa kolejne to kąt początkowy i końcowy (jeśli ma by ć pełna elipsa, to musz ą to by ć odpowiednio: 0 i 360), a dwa kolejne, to długo ść półosi poziomej i pionowej elipsy. Jeśli rysujemy fragment elipsy, który ma by ć wypełniony, to używamy procedury Sector wywoływanej w identyczny sposób jak Ellipse. Całą i wypełnion ą elips ę możemy narysowa ć za pomoc ą procedury FillEllipse. Pobiera ona cztery argumenty wywołania. Dwa pierwsze s ą typu integer, dwa pozostałe typu word. Pierwsza para określa położenie środka elipsy, trzeci parametr określa długo ść półosi poziomej, czwarty długo ść półosi pionowej elipsy. Do narysowania dowolnej figury może posłuży ć nam procedura DrawPoly. Przyjmuje ona dwa parametry wywołania. Pierwszy, typu word, określa liczb ę charakterystycznych punktów rysowanej figury, natomiast drugi jest tablic ą rekordów typu PointType, które określaj ą współrzędne tych punktów. Typ PointType jest zdefiniowany następująco: 8 Podobnie jak ma to miejsce w przypadku MoveRel. 9 Dosłowne tłumaczenia z angielskiego: kawałek ciasta. Ten element graficzny służy najczęściej do tworzenia wykresów kołowych. 10
11 PointType = record X,Y:integer; Jeśli chcemy, aby nasza figura była wypełniona, zamiast DrawPoly użyjemy FillPoly. Sposób wywołania tej procedury nie zmienia si ę. Do narysowania prostopadłościanu możemy uży ć procedury Bar3d. Przyjmuje ona sześć parametrów wejściowych. Pierwsze dwie pary s ą współrzędnymi lewego górnego i prawego dolnego rogu przedniej ściany prostopadłościanu. Kolejny parametr, typu word określa głęboko ść prostopadłościanu, natomiast ostatni, typu boolean określa, czy ma by ć widoczny wierzchołek tego prostopadłościanu, czy te ż nie. Zamiast wartości true i false możemy uży ć, jako tego parametru, stałych TopOn (true) i TopOff (false). Czasem zachodzi konieczno ść skopiowania fragmentu obraz i umieszczenia go w innym miejscu. Aby skopiowa ć wybrany fragment obrazu należy uży ć procedury GetImage. Przyjmuje ona pi ęć parametrów wywołania. Pierwsze cztery s ą typu integer (może to by ć zmienna, warto ść lub wyrażenie). Pierwsza para jest współrzędnymi lewego, górnego rogu kopiowanego obszaru, druga prawego dolnego rogu (obszar ten jest prostokątny). Ostatni parametr może być 10 zdereferencjonowanym wskaźnikiem typu pointer. Ten wskaźnik zawiera adres dynamicznie przydzielonego obszaru pamięci, w którym będzie zapisany skopiowany fragment obrazu. Pami ęć t ą możemy przydzieli ć za pomocą procedury getmem. Dla tej procedury musimy określi ć ilo ść pamięci, któr ą ma przydzieli ć. Możemy to uczyni ć za pomoc ą funkcji ImageSize. Zwraca ona warto ść typu word, będąc ą liczb ą bajtów zajmowanych przez dany fragment obrazu, a pobiera cztery parametry wywołania typu integer, określające współrzędne lewego górnego i prawego dolnego rogu kopiowanego fragmentu obrazu. Wklejenia obrazu dokonujemy za pomoc ą procedury PutImage. Przyjmuje ona dwa parametry wywołania. Pierwsze dwa s ą typu integer i określaj ą współrzędne, w których ma znale źć si ę lewy, górny róg wklejanego obrazu, trzecim parametrem może by ć zdereferencjonowany wskaźnik zawierający adres pamięci, w której jest umieszczony wklejany obraz 11, natomiast jako ostatni parametr określa sposób umieszczenia obrazu na tle i powinna to by ć jedna ze stałych, które były opisywane wraz z procedurą SetWriteMode Temat wskaźników będzie poruszany na następnych wykładach. 11 Ta pami ęć pełni rol ę podobn ą do roli schowka w systemie MS Windows. 12 Prosz ę zauważy ć, że zastosowanie XORPut pozwoli w prosty sposób uzyska ć efekt operacji cof- nij (ang. undo). Wystarczy ponownie nałoży ć obraz, aby go usun ąć. 11
12 6. Elementy modułu graph związane z tekstem Niestety modu ł graph nie dysponuje tak wygodn ą w użyciu procedurą wypisywania tekstu, jak ą jest write. Dostępne s ą dwie procedury wykonujące, takie operacje, ale wypisujące tylko łańcuchy znaków. Jeśli chcemy wypisać warto ść innego typu, to musimy j ą skonwertowa ć na typ string. Pierwsz ą z tych procedur jest outtext, drug ą jest parametr wywołania typu współrzędnymi (typ outextxy. Pierwsza przyjmuje tylko jeden string, druga trzy, z czego dwa pierwsze są integer) punktu na ekranie, od którego będzie wypisywany tekst, natomiast trzeci jest zmienn ą typu string lub łańcuchem znaków. Aby określi ć sposób wypisywania tekstu na ekranie możemy posłuży ć si ę procedurą SetTextStyle. Pobiera ona trzy parametry wywołania typu word. Pierwszy parametr określa krój pisma, drugi kierunek, natomiast trzeci rozmiar znaków. Dostępnych jest kilka stałych zdefiniowanych w module graph, które mog ą być użyte jako warto ść pierwszego parametru. S ą to: DefaultFont (0) domyślny krój, TriplexFont (1) krój triplex (znaki s ą wygładzone), SmallFont (2) małe znaki, SansSerifFont (3) krój bezszeryfowy, GothicFont (4) krój gotycki. Jako warto ść drugiego parametru możemy zastosowa ć stałe: HorizDir (0) kierunek poziomy, VertDir (1) kierunek pionowy. Procedura SetTextJustify pozwala określi ć wyrównanie tekstu w pionie i poziomie. Przyjmuje ona dwa parametry typu word. Pierwszy z nich może by ć jedną z trzech stałych, określających sposób wyrównania tekstu w poziomie: LeftText (0) wyrównanie do strony lewej, CenterText (1) wyśrodkowanie tekstu, RightText (2) wyrównanie do strony prawej tekstu. Jako drugi parametr wywołania, określający wyrównanie tekstu w pionie, może zostać przekazana jedna z trzech następujących stałych: BottomText (0) wyrównanie w dó ł, CenterText (1) wyśrodkowanie i TopText (2) wyrównanie w gór ę. Jeśli chcemy pozna ć wymiary tekstu w pikselach, to możemy zastosowa ć dwie funkcje: TextHight która zwraca warto ść typu word, określając ą wysoko ść tekstu i TextWidth, która równie ż zwraca warto ść TextSettingsType = record Font:Word; Direction: Word; CharSize: Word; Horiz: Word; Vert: Word; 12
13 typu word, ale określając ą szeroko ść tekstu. Obie funkcje jako parametr wywołania przyjmuj ą łańcuch znaków lub zmienn ą typu string. Jeśli chcemy pozna ć parametry wyświetlania tekstu, to musimy uży ć procedury GetTextSettings. Przyjmuje ona tylko jeden parametr wywołania, będący zmienn ą typu TextSettingsType. Definicja typu, która jest umieszczona w module graph została podana w ramce na poprzedniej stronie. Pole Font zawiera informacje o kroju, pole Direction zawiera informacje o kierunku wypisywania, pole CharSize zawiera informacje o rozmiarze znaków, pole Horiz zawiera informacje o wyrównaniu pionowym tekstu, pole Vert o wyrównaniu poziomym. 13
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ółowoWykł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ółowoKod ź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ółowoTryb graficzny w Pascalu
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ą
Bardziej szczegółowoGRAFIKA 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ółowoP 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ółowoPascal - 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ółowoOkna 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ółowoGRAFIKA 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ółowoBaltie 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ółowo8. Dynamiczne generowanie grafiki, cz. 2
8. Dynamiczne generowanie grafiki, cz. 2 8.1. Generowanie tekstu Chociaż tekst można umieścić na grafice korzystając z HTML (używając grafiki jako tła obiektu), często wygodniej jest umieścić tekst bezpośrednio
Bardziej szczegółowoW zależności od posiadanej karty, różna może być rozdzielczość i liczba kolorów. Schemat programu. zainicjowanie grafiki. operacje w trybie graficznym
GRAFIKA Moduł graphicsh zawiera funkcje umożliwiające: obsługę kart graficznych wybór i zmianę trybu graficznego rysowanie różnych figur geometrycznych z zastosowaniem linii o różnej grubości i fakturze
Bardziej szczegółowoPodstawy 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ółowoObsługa grafiki w Delphi, rysowanie na płótnie, obsługa myszki, zapisywanie obrazków do plików, bitmapy pozaekranowe.
Programowanie Wizualno-Obiektowe (studia zaoczne - inżynieria komputerowa) Zajęcia z Delphi 5, program 1 Temat: Zadanie: Obsługa grafiki w Delphi, rysowanie na płótnie, obsługa myszki, zapisywanie obrazków
Bardziej szczegółowoWprowadzenie 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ółowoCzęść 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ółowoKGGiBM 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ółowoGraż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ółowonarzę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ółowoPodstawy Programowania semestr drugi. Wykład czternasty
Wykład czternasty 1. Polimorfizm Ostatni wykład zakończyliśmy stwierdzeniem, że możemy obiektowi dowolnej klasy przypisa ć obiekt klasy dziedziczącej po tej klasie. Przypisanie takie obejmuje jednak jedynie
Bardziej szczegółowo3 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ółowoKATEGORIA 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ółowoAdobe 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ółowoRysowanie 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ółowo3.4. Opis konfiguracji layoutów.
Definicja layout-ów dla tablicy odczytywana jest z tabeli w bazie danych: [UnitId_System] Gdańsk = 42, Gdynia = 43 [UnitId_Subsytem] 6 = TZT, 7 = ZZT [UnitId_Unit] identyfikator obiektu [Update_TimeStamp]
Bardziej szczegółowoWizualne 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ółowoWYKŁAD 3 WYPEŁNIANIE OBSZARÓW. Plan wykładu: 1. Wypełnianie wieloboku
WYKŁ 3 WYPŁNINI OSZRÓW. Wypełnianie wieloboku Zasada parzystości: Prosta, która nie przechodzi przez wierzchołek przecina wielobok parzystą ilość razy. Plan wykładu: Wypełnianie wieloboku Wypełnianie konturu
Bardziej szczegółowoGRAFIKA. 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ółowoMaskowanie 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ółowoTWORZENIE 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ółowoMicrosoft Small Basic
Microsoft Small Basic Okno grafiki Szacowany czas trwania lekcji: 1 godzina Okno grafiki Podczas tej lekcji uzyskasz informacje na temat: Instrukcji używających obiektu GraphicsWindow. Właściwości obiektu
Bardziej szczegółowoTematy 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ółowoPoniŜ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ółowoJę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ółowoRysowanie 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ółowoDelphi podstawy programowania. Środowisko Delphi
Delphi podstawy programowania Środowisko Delphi Olsztyn 2004 Delphi Programowanie obiektowe - (object-oriented programming) jest to metodologia tworzeniu programów komputerowych definiująca je jako zbiór
Bardziej szczegółowoĆwiczenie 1 Automatyczna animacja ruchu
Automatyczna animacja ruchu Celem ćwiczenia jest poznanie procesu tworzenia automatycznej animacji ruchu, która jest podstawą większości projektów we Flashu. Ze względu na swoją wszechstronność omawiana
Bardziej szczegółowoWykł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ółowoInstrukcja obsługi funkcji specjalnych szablonu C01 v.1.0
Instrukcja obsługi funkcji specjalnych szablonu C01 v.1.0 UWAGA 1: Przed dokonaniem jakichkolwiek zmian, zalecamy skopiować wcześniej kod html modułu do pliku na lokalnym dysku. W przypadku problemów ułatwi
Bardziej szczegółowoWstęp Pierwsze kroki Pierwszy rysunek Podstawowe obiekty Współrzędne punktów Oglądanie rysunku...
Wstęp... 5 Pierwsze kroki... 7 Pierwszy rysunek... 15 Podstawowe obiekty... 23 Współrzędne punktów... 49 Oglądanie rysunku... 69 Punkty charakterystyczne... 83 System pomocy... 95 Modyfikacje obiektów...
Bardziej szczegółowoSylabus Moduł 4: Grafika menedżerska i prezentacyjna
Sylabus Moduł 4: Grafika menedżerska i prezentacyjna Niniejsze opracowanie przeznaczone jest dla osób zamierzających zdać egzamin ECDL (European Computer Driving Licence) na poziomie podstawowym. Publikacja
Bardziej szczegółowoCel ćwiczenia: Celem ćwiczenia jest nabranie wprawy w rysowaniu kół i okręgów o zadanych rozmiarach.
Cel ćwiczenia: Celem ćwiczenia jest nabranie wprawy w rysowaniu kół i okręgów o zadanych rozmiarach. Dodatkowo w zadaniu tym, ćwiczone są umiejętności w nadawaniu kolorów wypełnienia i obrysu oraz w używaniu
Bardziej szczegółowoProgramowanie. 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ółowoGrafika 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ółowoTworzenie 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ółowoPodstawy programowania, Poniedziałek , 8-10 Projekt, część 1
Podstawy programowania, Poniedziałek 30.05.2016, 8-10 Projekt, część 1 1. Zadanie Projekt polega na stworzeniu logicznej gry komputerowej działającej w trybie tekstowym o nazwie Minefield. 2. Cele Celem
Bardziej szczegółowoAutokształtów Autokształt AUTOKSZTAŁTY Wstaw Obraz Autokształty Autokształty GDYNIA 2009
szkolenie zespołu matematyczno-przyrodniczego W programach pakietu MS Office (Word, PowerPoint, Excel), zamiast importować grafikę, obrazki lub wykresy sami możemy je tworzyć przy użyciu Autokształtów.
Bardziej szczegółowoCel: 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ółowoProgramowanie 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ółowoTeraz bajty. Informatyka dla szkoły podstawowej. Klasa 4 Wymagania edukacyjne na poszczególne oceny szkolne dla klasy 4
1 Teraz bajty. Informatyka dla szkoły podstawowej. Klasa 4 Wymagania edukacyjne na poszczególne oceny szkolne dla klasy 4 1. Komputer i programy komputerowe Posługiwanie się komputerem i praca z programem
Bardziej szczegółowoPodstawy programowania. Wykład Funkcje. Krzysztof Banaś Podstawy programowania 1
Podstawy programowania. Wykład Funkcje Krzysztof Banaś Podstawy programowania 1 Programowanie proceduralne Pojęcie procedury (funkcji) programowanie proceduralne realizacja określonego zadania specyfikacja
Bardziej szczegółowo1. Umieść kursor w miejscu, w którym ma być wprowadzony ozdobny napis. 2. Na karcie Wstawianie w grupie Tekst kliknij przycisk WordArt.
Grafika w dokumencie Wprowadzanie ozdobnych napisów WordArt Do tworzenia efektownych, ozdobnych napisów służy obiekt WordArt. Aby wstawić do dokumentu obiekt WordArt: 1. Umieść kursor w miejscu, w którym
Bardziej szczegółowo3.7. Wykresy czyli popatrzmy na statystyki
3.7. Wykresy czyli popatrzmy na statystyki Współczesne edytory tekstu umożliwiają umieszczanie w dokumentach prostych wykresów, służących do graficznej reprezentacji jakiś danych. Najprostszym sposobem
Bardziej szczegółowoSzybkie 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ółowoNiezwykł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ółowoObsł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ółowoTeraz bajty. Informatyka dla szkoły podstawowej. Klasa IV
Teraz bajty. Informatyka dla szkoły podstawowej. Klasa IV 1 Posługiwanie się komputerem i praca z programem komputerowym wymienia przynajmniej trzy podstawowe zasady ich, m.in.: dba o porządek na stanowisku
Bardziej szczegółowoWykł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ółowo1 Wstęp teoretyczny. Temat: Obcinanie odcinków do prostokąta. Grafika komputerowa 2D. Instrukcja laboratoryjna Prostokąt obcinający
Instrukcja laboratoryjna 3 Grafika komputerowa 2D Temat: Obcinanie odcinków do prostokąta Przygotował: dr inż. Grzegorz Łukawski, mgr inż. Maciej Lasota, mgr inż. Tomasz Michno 1 Wstęp teoretyczny 1.1
Bardziej szczegółowoINFORMATYKA KLASA IV
1 INFORMATYKA KLASA IV WYMAGANIA NA POSZCZEGÓLNE OCENY SZKOLNE 1. Komputer i programy komputerowe Posługiwanie się komputerem i praca z programem komputerowym wymienia przynajmniej trzy podstawowe zasady
Bardziej szczegółowo// Potrzebne do memset oraz memcpy, czyli kopiowania bloków
ZAWARTOŚCI 3 PLIKOW W WORDZIE: MAIN.CPP: #include #include #include pamięci // Potrzebne do memset oraz memcpy, czyli kopiowania bloków #include "Rysowanie_BMP.h" using
Bardziej szczegółowoProgramowanie 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ółowoScilab - podstawy. Wersje instalacyjne programu Scilab mogą zostać pobrane ze strony
Scilab - podstawy Scilab jest środowiskiem numerycznym, programistycznym i numerycznym dostępnym za darmo z INRIA (Institut Nationale de Recherche en Informatique et Automatique). Jest programem podobnym
Bardziej szczegółowoPascal - 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ółowoWASM 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ółowoDodawanie grafiki i obiektów
Dodawanie grafiki i obiektów Word nie jest edytorem obiektów graficznych, ale oferuje kilka opcji, dzięki którym można dokonywać niewielkich zmian w rysunku. W Wordzie możesz zmieniać rozmiar obiektu graficznego,
Bardziej szczegółowoPrzed rozpoczęciem pracy otwórz nowy plik (Ctrl +N) wykorzystując szablon acadiso.dwt
Przed rozpoczęciem pracy otwórz nowy plik (Ctrl +N) wykorzystując szablon acadiso.dwt Zadanie: Utwórz szablon rysunkowy składający się z: - warstw - tabelki rysunkowej w postaci bloku (według wzoru poniżej)
Bardziej szczegółowoTablice. Jones Stygar na tropie zmiennych
Tablice Jones Stygar na tropie zmiennych Czym jest tablica? Obecnie praktycznie wszystkie języki programowania obsługują tablice. W matematyce odpowiednikiem tablicy jednowymiarowej jest ciąg (lub wektor),
Bardziej szczegółowoPodstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
Podstawy programowania Wykład: 9 Łańcuchy znaków 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Rodzaje plików Dane przechowywane w pliku mogą mieć reprezentację binarną (taką samą, jak
Bardziej szczegółowoPodstawy Programowania 1 Podstawy Grafiki 2D - część pierwsza Biblioteka Allegro. Plan. Wprowadzenie. Inicjacja i finalizacja. Notatki.
Podstawy Programowania 1 Podstawy Grafiki 2D - część pierwsza Biblioteka Allegro Arkadiusz Chrobot Zakład Informatyki 28 stycznia 2016 1 / 28 Plan Wprowadzenie Rysowanie prymitywów Obsługa klawiatury Animacja
Bardziej szczegółowo. Podstawy Programowania 1. Podstawy Grafiki 2D - część pierwsza Biblioteka Allegro. Arkadiusz Chrobot. 28 stycznia 2016
.. Podstawy Programowania 1 Podstawy Grafiki 2D - część pierwsza Biblioteka Allegro Arkadiusz Chrobot Zakład Informatyki 28 stycznia 2016 1 / 28 Plan.1 Wprowadzenie.2 Inicjacja i finalizacja.3 Rysowanie
Bardziej szczegółowoProgramowanie 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ółowoGrafika rastrowa (bitmapa)-
Grafika komputerowa Grafika rastrowa Grafika rastrowa (bitmapa)- sposób zapisu obrazów w postaci prostokątnej tablicy wartości, opisujących kolory poszczególnych punktów obrazu (prostokątów składowych).
Bardziej szczegółowoCzęść I - Zarządzanie powierzchnią ekranu
Ekran monitora podłączonego do urządzenia ABA-X Display jest zorganizowany w następujący sposób: Orientacja monitora może być pozioma (Pejzaż) lub pionowa (Potret). Cały ekran posiada domyśny numer :0,
Bardziej szczegółowoJak dodać własny szablon ramki w programie dibudka i dilustro
Aby dodać własną ramkę otwórz moduł administracyjny dibudkaadmin.exe, wejdź do zakładki Ramki, tła, id i następnie Edycja. 1. Kliknij przycisk Dodaj ramkę 2. Określ wymiary nowej ramki Jeżeli dodajesz
Bardziej szczegółowoSkaner Mustek Scan Express
INSTRUKCJA OBSŁUGI Nr produktu 884056 Skaner Mustek Scan Express Strona 1 z 14 Instalacja sterownika skanera TWAIN. Sterownik TWAIN jest modułem skanującym dostarczonym wraz Twoim skanerem. Jest on łatwo
Bardziej szczegółowoObliczenia iteracyjne
Lekcja Strona z Obliczenia iteracyjne Zmienne iteracyjne (wyliczeniowe) Obliczenia iteracyjne wymagają zdefiniowania specjalnej zmiennej nazywanej iteracyjną lub wyliczeniową. Zmienną iteracyjną od zwykłej
Bardziej szczegółowo1. Dockbar, CMS + wyszukiwarka aplikacji Dodawanie portletów Widok zawartości stron... 3
DODAJEMY TREŚĆ DO STRONY 1. Dockbar, CMS + wyszukiwarka aplikacji... 2 2. Dodawanie portletów... 3 Widok zawartości stron... 3 Omówienie zawartości portletu (usunięcie ramki itd.)... 4 3. Ikonki wybierz
Bardziej szczegółowoKATEGORIA OBSZAR WIEDZY
Moduł 3 - Przetwarzanie tekstów - od kandydata wymaga się zaprezentowania umiejętności wykorzystywania programu do edycji tekstu. Kandydat powinien wykonać zadania o charakterze podstawowym związane z
Bardziej szczegółowoSylabus Moduł 2: Przetwarzanie tekstów
Sylabus Moduł 2: Przetwarzanie tekstów Niniejsze opracowanie przeznaczone jest dla osób zamierzających zdać egzamin ECDL (European Computer Driving Licence) na poziomie podstawowym. Publikacja zawiera
Bardziej szczegółowoPodstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
Podstawy programowania Wykład: 9 Łańcuchy znaków 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Tablica znaków w językach C i C++ (oraz pochodnych) łańcuch znaków przechowywany jest jako
Bardziej szczegółowoStałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane
Stałe, znaki, łańcuchy znaków, wejście i wyjście sformatowane Stałe Oprócz zmiennych w programie mamy też stałe, które jak sama nazwa mówi, zachowują swoją wartość przez cały czas działania programu. Można
Bardziej szczegółowoAnimacje 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ółowoBAZY DANYCH Panel sterujący
BAZY DANYCH Panel sterujący Panel sterujący pełni z reguły rolę centrum, z którego wydajemy polecenia i uruchamiamy różnorodne, wcześniej zdefiniowane zadania, np. wyświetlamy formularze lub drukujemy
Bardziej szczegółowoWymiarowanie i teksty. Polecenie:
11 Wymiarowanie i teksty Polecenie: a) Utwórz nowy rysunek z pięcioma warstwami, dla każdej warstwy przyjmij inny, dowolny kolor oraz grubość linii. Następnie narysuj pokazaną na rysunku łamaną warstwie
Bardziej szczegółowoPodstawy technologii WWW
Podstawy technologii WWW Ćwiczenie 8 PHP, czyli poczatki nowej, dynamicznej znajomosci Na dzisiejszych zajęciach rozpoczniemy programowanie po stronie serwera w języku PHP. Po otrzymaniu żądania serwer
Bardziej szczegółowoGRAFIKA RASTROWA. WYKŁAD 1 Wprowadzenie do grafiki rastrowej. Jacek Wiślicki Katedra Informatyki Stosowanej
GRAFIKA RASTROWA WYKŁAD 1 Wprowadzenie do grafiki rastrowej Jacek Wiślicki Katedra Informatyki Stosowanej Grafika rastrowa i wektorowa W grafice dwuwymiarowej wyróżnia się dwa rodzaje obrazów: rastrowe,
Bardziej szczegółowo1. OPEN OFFICE RYSUNKI
1. 1 1. OPEN OFFICE RYSUNKI 1.1 Wiadomości podstawowe Po uruchomieniu programu Draw okno aplikacji wygląda jak na poniższym rysunku. Składa się ono z głównego okna, w którym edytuje się rysunek oraz czterech
Bardziej szczegółowoPlatforma e-learningowa
Platforma e-learningowa skrócona instrukcja obsługi. Aby uruchomić platformę e-learningową, należy otworzyć przeglądarkę internetową, a następnie wpisać adres http://aok.learnway.eu/ - wyświetlony zostanie
Bardziej szczegółowoTik 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ółowoWykład 8: klasy cz. 4
Programowanie obiektowe Wykład 8: klasy cz. 4 Dynamiczne tworzenie obiektów klas Składniki statyczne klas Konstruktor i destruktory c.d. 1 dr Artur Bartoszewski - Programowanie obiektowe, sem. 1I- WYKŁAD
Bardziej szczegółowoTematy lekcji zajęć komputerowych klasa 5b grupa 1 i grupa 2
Tematy lekcji zajęć komputerowych klasa 5b grupa 1 i grupa 2 1 Program nauczania. Przedmiotowy system oceniania. Regulamin pracowni komputerowej. - 7 punktów regulaminu potrafi powiedzieć, czego się będzie
Bardziej szczegółowo1. Przypisy, indeks i spisy.
1. Przypisy, indeks i spisy. (Wstaw Odwołanie Przypis dolny - ) (Wstaw Odwołanie Indeks i spisy - ) Przypisy dolne i końcowe w drukowanych dokumentach umożliwiają umieszczanie w dokumencie objaśnień, komentarzy
Bardziej szczegółowoPodstawy programowania, Poniedziałek , 8-10 Projekt, część 3
Podstawy programowania, Poniedziałek 13.05.2015, 8-10 Projekt, część 3 1. Zadanie Projekt polega na stworzeniu logicznej gry komputerowej działającej w trybie tekstowym o nazwie Minefield. 2. Cele Celem
Bardziej szczegółowoECDL/ICDL Grafika menedżerska i prezentacyjna Moduł S2 Sylabus - wersja 5.0
ECDL/ICDL Grafika menedżerska i prezentacyjna Moduł S2 Sylabus - wersja 5.0 Przeznaczenie Sylabusa Dokument ten zawiera szczegółowy Sylabus dla modułu ECDL/ICDL Grafika menedżerska i prezentacyjna. Sylabus
Bardziej szczegółowoScenariusz lekcji. Scenariusz lekcji. opisać działanie narzędzi przybornika. korzystać z Edytora postaci programu Logomocja;
Kolorowe neony Scenariusz lekcji Scenariusz lekcji 1 TEMAT LEKCJI: Kolorowe neony 2 CELE LEKCJI: 2.1 Wiadomości: Uczeń potrafi: opisać sposób tworzenia animacji; wyjaśnić pojęcie klatka ; opisać działanie
Bardziej szczegółowoPraca 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