3 Biblioteka BGI. 3.1 Instalacja środowiska Turbo C 1.5

Podobne dokumenty
W zależności od posiadanej karty, różna może być rozdzielczość i liczba kolorów. Schemat programu. zainicjowanie grafiki. operacje w trybie graficznym

ROZDZIAŁ 2 Biblioteka WinBGIm

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

Programowanie w C Biblioteka grafiki winbgim i tworzenie obiektów graficznych

Szybkie tworzenie grafiki w GcIde

Funkcja (podprogram) void

C Biblioteka G2. C.1 Koncepcja biblioteki G2.

PROGRAMOWANIE w C prolog

METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE. Wykład 02

Sterowniki Programowalne (SP) Wykład 13

Funkcje. czyli jak programować proceduralne. Programowanie Proceduralne 1

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

Instrukcja instalacji winbgim

Komunikacja w mikrokontrolerach. Podstawy programowania. Wydział Elektroniki Mikrosystemów i Fotoniki dr inż. Piotr Markowski

Funkcje. czyli jak programować proceduralne. Programowanie Proceduralne 1

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

B Biblioteka GD. B.1 Koncepcja biblioteki GD.

WPROWADZENIE DO INFORMATYKI

Delphi podstawy programowania. Środowisko Delphi

Instytut Fizyki Politechniki Łódzkiej Laboratorium Metod Analizy Danych Doświadczalnych Ćwiczenie 3 Generator liczb losowych o rozkładzie Rayleigha.

Wstęp. #define include include include include include include

Wstęp do Programowania, laboratorium 02

3 Przygotował: mgr inż. Maciej Lasota

ROZSZERZANIE MOŻLIWOŚCI...

Podstawy programowania. Wykład: 9. Łańcuchy znaków. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

INSTRUKCJA instalacja landxpert v11

PAMIĘĆ OPERACYJNA...107

Kompilator języka C na procesor 8051 RC51 implementacja

Wykład VII. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2014 Janusz Słupik

Wykład Tryby adresowania i modele pamięci adres_logiczny = segment : offset Tryb adresowania rzeczywistego

Ćwiczenie nr 6. Poprawne deklaracje takich zmiennych tekstowych mogą wyglądać tak:

Standardy programowania protokołów komunikacyjnych Laboratorium nr 5 komunikacja multicastowa IPv6

Instytut Teleinformatyki

Informatyka, Ćwiczenie Uruchomienie Microsoft Visual C++ Politechnika Rzeszowska, Wojciech Szydełko. I. ZałoŜenie nowego projektu

Janusz Ganczarski. OpenGL Pierwszy program

Wykład 1

2 Przygotował: mgr inż. Maciej Lasota

Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat

Temat 1: Podstawowe pojęcia: program, kompilacja, kod

Instrukcja aktualizacji do landxpert 13 Poradnik techniczny

Informatyka I : Tworzenie projektu

Podstawy Informatyki Wprowadzenie do języka C dr inż. Jarosław Bułat

Wymagania systemowe oraz sposób instalacji systemu Lokale Spis treści

Ćwiczenie Nr 6 Przegląd pozostałych najważniejszych mechanizmów systemu operacyjnego Windows

1 Temat: Wprowadzenie do biblioteki OpenCV

Języki i metodyka programowania. Wprowadzenie do języka C

Liczby pseudolosowe. #include <stdio.h> #include <stdlib.h> int main() { printf("%d\n", RAND_MAX); return 0; }

Algorytm. a programowanie -

SPIS TREŚCI: KARTY GRAFICZNE... 15

Expo Composer Garncarska Szczecin tel.: info@doittechnology.pl. Dokumentacja użytkownika

1 Zapoznanie się ze środowiskiem Xenomai.

Ćwiczenie 1. Przygotowanie środowiska JAVA

Wprowadzenie do biblioteki klas C++

Zainstalowany AutoCAD w pełnej wersji najlepiej Civil lub MAP 2007 lub wyższej.

Inżynieria Materiałowa i Konstrukcja Urządzeń - Projekt

Wykład VII PASCAL - grafika;

( wykł. dr Marek Piasecki )

Implementacja aplikacji sieciowych z wykorzystaniem środowiska Qt

Wstęp do programowania

PLUTO Sterownik bezpieczeństwa Skrócona Instrukcja obsługi oprogramowania. PlutoProgrammingManualPL_v7A.pdf 1

Temat: Dynamiczne przydzielanie i zwalnianie pamięci. Struktura listy operacje wstawiania, wyszukiwania oraz usuwania danych.

Allegro5 część 1 - Witaj Świecie! Projekt, inicjalizacja, tworzenie okna, czcionki. Autor: Kamil Krzyszczuk - C mons

WYKŁAD 10. Zmienne o złożonej budowie Statyczne i dynamiczne struktury danych: lista, kolejka, stos, drzewo. Programy: c5_1.c, c5_2, c5_3, c5_4, c5_5

1. Pierwszy program. Kompilator ignoruje komentarze; zadaniem komentarza jest bowiem wyjaśnienie programu człowiekowi.

Wymagania edukacyjne z przedmiotu: informatyka. w Szkole Podstawowej im. S. Czesławy Lorek w Biczykach Dolnych. w roku szkolnym 2013/2014

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

Preprocesor języka C: dyrektywy, makrodefinicje

Wstęp do programowania INP003203L rok akademicki 2016/17 semestr zimowy. Laboratorium 1. Karol Tarnowski A-1 p.

Cwiczenie nr 1 Pierwszy program w języku C na mikrokontroler AVR

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa

ISO/ANSI C - funkcje. Funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje. ISO/ANSI C - funkcje

Języki formalne i gramatyki

Spis treści WSTĘP CZĘŚĆ I. PASCAL WPROWADZENIE DO PROGRAMOWANIA STRUKTURALNEGO. Rozdział 1. Wybór i instalacja kompilatora języka Pascal

Wstęp do Informatyki i Programowania Laboratorium: Lista 0 Środowisko programowania

#include <stdio.h> #include <stdlib.h> // standardowe biblioteki

Instalowanie VHOPE i plików biblioteki VHOPE

IBM SPSS Statistics Wersja 22. Linux - Instrukcja instalacji (licencja wielokrotna)

Programowanie I C / C++ laboratorium 02 Składnia pętli, typy zmiennych, operatory

Część XII C++ Warunki zagnieżdżone Ćwiczenie 1 nazwisko40 2. nie przepisując komentarzy!

Jak napisać program obliczający pola powierzchni różnych figur płaskich?

Poziomy wymagań Konieczny K Podstawowy- P Rozszerzający- R Dopełniający- D Uczeń: z zakresu systemów

Włóż płytę instalacyjną z systemem Windows Vista do napędu DVD ROM lub podłącz pamięć flash USB do portu USB.

Nagrywamy podcasty program Audacity

Podstawy programowania. Wykład Funkcje raz jeszcze. Biblioteka standardowa. Krzysztof Banaś Podstawy programowania 1

Wstęp do programowania INP003203L rok akademicki 2018/19 semestr zimowy. Laboratorium 2. Karol Tarnowski A-1 p.

Techniki programowania INP001002Wl rok akademicki 2017/18 semestr letni. Wykład 7. Karol Tarnowski A-1 p.

Wykład organizacyjny. Czyli kto i o czym będzie mówił? Jak również co się będzie działo poza wykładem? Dr hab. Jacek Tarasiuk WFiIS, AGH, Kraków

JAVA?? to proste!! Autor: wojtekb111111

Programowanie w C++ Wykład 3. Katarzyna Grzelak. 12 marca K.Grzelak (Wykład 1) Programowanie w C++ 1 / 35

Programowanie w języku C++ Grażyna Koba

Podstawy programowania, Poniedziałek , 8-10 Projekt, część 1

Programowanie procesorów graficznych NVIDIA (rdzenie CUDA) Wykład nr 1

Wprowadzenie. Organizacja pracy i środowisko programistyczne. Mirosław Ochodek

Laboratorium 1. I. Zainstaluj program Eclipse (wersja C/C++ w odpowiednim systemie operacyjnym

Podstawy Processingu. Diana Domańska. Uniwersytet Śląski

PROGRAMOWANIE SYSTEMÓW CZASU RZECZYWISTEGO

J zyk C dla sterowników programowalnych GeFanuc

Oczyszczanie dysku. Zobacz również: 6 sposobów na zwolnienie miejsca na dysku twardym

Programowanie w języku C++

Transkrypt:

3 Biblioteka BGI. J a c e k Ta r a s i u k Biblioteka graficzna BGI ma obecnie charakter zabytkowy. Jednak z uwagi na to, że ciągle dostępne są darmowe kompilatory z nią współpracujące, jak również z powodu istnienia bardzo użytecznej biblioteki WinBGIm, bliźniaczo do niej podobnej, zdecydowałem się zamieścić tutaj opis (chyba) pierwszej biblioteki graficznej na komputerach PC. 3.1 Instalacja środowiska Turbo C 1.5 Na stronie firmy Borland: http://community.borland.com/article/0,1410,21751,00.html można znaleźć archiwalne wydania kompilatora Turbo C i Turbo C++. Po zainstalowaniu ich z dyskietek (Turbo C++ nie instaluje się z dysku twardego, ale można pokombinować z pamięciami USB) można na nich pracować w katalogu instalacyjnym lub innym wybranym. Musimy jedynie pamiętać, że kompilatory te powstały pod system operacyjny DOS, w związku z tym zarówno nazwy plików jak i katalogów nie mogą przekraczać ośmiu liter oraz nie mogą zawierać spacji. W przypadku kompilatora Turbo C++ v.1 możliwe jest jego przeniesienie na dyskietkę systemową i uruchamianie na komputerze pozbawionym systemu operacyjnego. Wszystkie potrzebne pliki zajmują około 700 kb. Uwzględniając obecność plików systemowych, pozostaje kilkadziesiąt kilobajtów na własne programy. Biblioteka BGI. 3-1

Wprowadzenie do grafiki komputerowej v.2006 Instalacja środowiska Turbo C 1.5 Pliki, które powinny się znaleźć na dyskietce: EGAVGA.BGI, GOTH.CHR, LITT.CHR, SANS.CHR, TRIP.CHR, ALLOC.H, ASSERT.H, BIOS.H, CONIO.H, CTYPE.H, DIR.H, DOS.H, ERRNO.H, FCNTL.H, FLOAT.H, GRAPHICS.H, IO.H, LIMITS.H, MATH.H, MCALC.H, MEM.H, PROCESS.H, SETJMP.H, SHARE.H, SIGNAL.H, STDARG.H, STDDEF.H, STDIO.H, STDLIB.H, STRING.H, TC.EXE, TIME.H, VALUES.H, CL.LIB, EMU.LIB, GRAPHICS.LIB, MATHL.LIB, C0L.OBJ Podany zestaw plików pozwala na uruchamianie programów w modelu pamięci typu LARGE. Każdy plik z kodem źródłowym języka C powinien być zaopatrzony w odpowiadający mu plik projektu o tej samej nazwie np. test.c i test.prj. Plik projektu powinien zawierać nazwę pliku lub plików źródłowych w C oraz nazwę biblioteki, która ma być dołączona do programu. W przypadku biblioteki graficznej BGI plik ten powinien wyglądać następująco: test.c graphics.lib Zawartość pliku test.prj Najprostszy schemat pracy z kompilatorem Turbo C wygląda następująco: 1. Wczytujemy plik źródłowy File/Load 2. Wczytujemy plik projektu Project/Project name 3. Zmieniamy model pamięci Options/Compiler/Model 4. Uruchamiamy program Run 3.2 Alfabetyczny spis dostępnych funkcji Poniżej zebrano wszystkie funkcje dostępne w bibliotece BGI. Szczegółowe opisy każdej z funkcji można znaleźć w rozdziale piątym skryptu traktującym o bibliotece WinBGIm wyrosłej na bazie biblioteki BGI. arc(int x, int y, int stangle, int endangle, int radius); bar(int left, int top, int right, int bottom); bar3d(int left, int top, int right, int bottom, int depth, int topflag); circle(int x, int y, int radius); Biblioteka BGI. 3-2

cleardevice(void); clearviewport(void); closegraph(void); Wprowadzenie do grafiki komputerowej v.2006 Alfabetyczny spis dostępnych funkcji detectgraph(int far *graphdriver,int far *graphmode); drawpoly(int numpoints, int far *polypoints); ellipse(int x, int y, int stangle, int endangle, int xradius, int yradius); fillpoly(int numpoints, int far *polypoints); floodfill(int x, int y, int border); getarccoords(struct arccoordstype far *arccoords); getaspectratio(int far *xasp, int far *yasp); getbkcolor(void); getcolor(void); getfillpattern(char far *pattern); getfillsettings(struct fillsettingstype far *fillinfo); getgraphmode(void); getimage(int left, int top, int right, int bottom, void far *bitmap); getlinesettings(struct linesettingstype far *lineinfo); getmaxcolor(void); getmaxx(void); getmaxy(void); getmoderange(int graphdriver, int far *lomode, int far *himode); getpalette(struct palettetype far *palette); getpixel(int x, int y); gettextsettings(struct textsettingstype far *textinfo); getviewsettings(struct viewporttype far *viewport); getx(void); gety(void); graphdefaults(void); grapherrormsg(int errorcode); graphresult(void); imagesize(int left, int top, int right, int bottom); initgraph(int far *graphdriver, int far *graphmode, char far Biblioteka BGI. 3-3

*pathtodriver); line(int x1, int y1, int x2, int y2); linerel(int dx, int dy); lineto(int x, int y); moverel(int dx, int dy); moveto(int x, int y); outtext(char far *textstring); outtextxy(int x, int y, char far *textstring); Wprowadzenie do grafiki komputerowej v.2006 Alfabetyczny spis dostępnych funkcji pieslice(int x, int y, int stangle, int endangle, int radius); putimage(int left, int top, void far *bitmap, int op); putpixel(int x, int y, int color); rectangle(int left, int top, int right, int bottom); registerbgidriver(void (*driver)(void)); registerbgifont(void (*font)(void)); registerfarbgidriver(void far *driver); registerfarbgifont(void far *font); restorecrtmode(void); setactivepage(int page); setallpalette(struct palettetype far *palette); setbkcolor(int color); setcolor(int color); setfillpattern(char far *upattern, int color); setfillstyle(int pattern, int color); setgraphbufsize(unsigned bufsize); setgraphmode(int mode); setlinestyle(int linestyle, unsigned upattern, int thickness); setpalette(int colornum, int color); setrgbpalette(int colornum, int red, int green, int blue); settextjustify(int horiz, int vert); settextstyle(int font, int direction, int charsize); setusercharsize(int multx, int divx, int multy, int divy); setviewport(int left, int top, int right, int bottom, int clip); setvisualpage(int page); Biblioteka BGI. 3-4

textheight(char far *textstring); textwidth(char far *textstring); Wprowadzenie do grafiki komputerowej v.2006 Alfabetyczny spis dostępnych funkcji 3.3 Kody źródłowe Do skryptu dołączono pięć przykładowych programów w postaci plików w czystym C. Pliki te można skompilować i uruchomić w środowisku Turbo C. Wszystkie załączone tutaj przykłady pojawią się również w niemal identycznych wersjach przy omawianiu biblioteki WinBGIm. init_gr.c przykład inicjalizacji trybu graficznego oraz rysowania najprostszych obiektów graficznych. linie_gr.c rysowanie linii, zmiana kolorów, wypełnianie obszarów kolorami i wzorami. text_gr.c wypisywanie tekstów w trybie graficznym. urzadz_gr.c przykład obsługi stronicowania. zaaw_gr.c zaawansowane operacje bitowe i rysowanie histogramów. Biblioteka BGI. 3-5

Wprowadzenie do grafiki komputerowej v.2006 Kody źródłowe Niniejszy tekst jest fragmentem skryptu do wykładu: Praktyczne wprowadzenie do grafiki komputerowej Skrypt ten w całości podlega licencji Creative Commons. Szczegółowy opis licencji znajduje się w przedmowie, dostępnej wraz z najnowszą wersją skryptu na stronie: http://novell.ftj.agh.edu.pl/~tarasiuk/dydaktyka/gfk/gfk.html Biblioteka BGI. 3-6

Wprowadzenie do grafiki komputerowej v.2006 Kody źródłowe Biblioteka BGI. 3-7