Referat Grafica in pascal



Referat downloadat de: 144 ori.


Cauta referat dupa: grafica pascal


Descriere referat:

Pentru a executa un program ce contine apeluri la subrutine grafice, primul pas consta în trecerea din mod text în mod grafic (operatie care se numeste si initializarea (pornirea) modului grafic). Initializarea modului grafic se poate face prin apelul procedurii InitGraph. Prin aceasta procedura se pot identifica posibilitatile hardware disponibile pe calculator (i.e. adaptorul disponibil), dupa care se va rezerva memorie pentru a încarca driverul grafic potrivit, se vor initializa variabilele interne ce definesc conditiile de afisare în respectivul mod grafic, se va comuta echipamentul în acel mod grafic, se va sterge ecranul, apoi se va reveni în programul apelant, fixându-se valori corespunzatoare pentru driverul grafic si modul grafic. Daca procedura este utilizata în modul descris mai sus, biblioteca Graph asigura detectarea celui mai bun mod grafic disponibil, adica cel cu cea mai mare rezolutie si cea mai mare paleta de culori. Procedura nu poate executa o detectare corecta pentru toate standardele grafice existente. Astfel, modurile IBM 8514 si VESA nu pot fi detectate prin metoda mentionata, fiind necesare masuri în consecinta (fixarea "manuala" a modului grafic).Sintaxa procedurii de initializare a modului grafic este: PROCEDURE InitGraph(var driver_grafic,mod_grafic: integer; cale:STRING) Parametrii driver_grafic si mod_grafic sunt necesari pentru initializarea driverului si a modului graphic. Parametrul cale reprezinta un sir de caractere ce indica locul (directorul) unde se afla fisierele cu extensia .BGI si .CHR. Sirul nul (‘’) indica discul si directorul curent.Initializarea modului grafic se poate face prin trei moduri diferite. Primul si cel mai folosit mod de initializare este initializare prin autodetectare, adica prin folosirea constantei Detect, definita de biblioteca GRAPH. Functionarea acestui mod de pornire a modului grafic a fost evidentiata mai sus. Cel de-al doilea mod de initializare este initializarea automata prin folosirea apelului procedurii DetectGraph. Cel de-al treilea mod de initializare al modului grafic este initializarea manuala prin apelarea procedurii InitGraph cu parametrii corespunzator alesi. Initializarea manuala se face prin indicarea driverului si modului grafic corespunzator. Aceasta este o modalitate prin care se poate initializa driverul IBM8514. Rutine ajutatoare pentru initializarea grafica Procedura de initializare automata DetectGraph are urmatoarea sintaxa: DetectGraph(Var driver_grafic,mod_grafic:integer) Parametrii driver_grafic si mod_grafic au semnificatie identica cu cei folositi la InitGraph . Trecerea din modulul grafic în modul text se face prin CloseGraph, care descarca driverul grafic din memorie, elibereaza spatiul alocat si restaureza precedentul mod text. PROCEDURE CloseGraph; Tot pentru trecerea din modul grafic în modul text si invers se folosesc procedurile complementare RestoreCrtMode si SetGraphMode. PROCEDURE RestoreCrtMode; PROCEDURE SetGraphMode(mod_grafic:integer); RestoreCrtMode face trecerea în modul text fara eliberarea din memorie a driverului grafic, astfel la o trecere ulterioara din modul text în modul grafic secventa de potrivire a placii grafice cu tipul de monitor poate fi ocolita prin folosirea procedurii SetGraphMode. Prin folosirea RestoreCrtMode se va trece în modul text anterior, se sterge ecranul, cursorul modului text anterior fiind pus în pozitia "home" (linia 0, coloana 0, i.e. coltul stânga-sus). Astfel de manevre sunt necesare programelor care combina frecvent modul grafic cu cel text si mai ales când aceste treceri nu trebuie sa ocupe un timp prea mare. ...{Detectie erori de initializare} ...{1} gE:= GraphResult; ...{2} IF gE <> grOk THEN ...{3} BEGIN ...{initializarea nu a fost corecta} ......{4} WRITELN('eroare grafica:', GraphErrorMsg(gE)); ......{5} halt(1) ...{6} END; ...{7} xm:=getmaxx;{ rezolutie pe x} ...{8} ym:=getmaxy;{ rezolutia pe y} ...{9} cm:=getmaxcolor;{ numar de culori (paleta)} ...{desenare dreptunghi cu dimensiunile ecranului} ...rectangle(0,0,xm,ym); ...{Afisare mesaj} ...outtextxy(20,ym DIV 2,'Bun venit in lumea graficii'); ...ReadLn; ...CloseGraph END. Exemplul prezentat este un program didactic care deseneaza un dreptunghi de dimensiune maxima a ecranului si afiseaza mesajul: "Bun venit in lumea graficii". Pentru a putea dispune de functiile grafice, programul trebuie sa apeleze biblioteca GRAPH printr-o instructiune USES, imediat dupa antetul de program. În partea de declaratii se observa variabilele (de tip întreg) gD pentru driverul grafic, gM pentru modul grafic si gE pentru codul eventualelor erori survenite. Secventa de initializare prin autodetectie se bazeaza pe valoarea Detect, oferita ca parametru procedurii InitGraph. Liniile 1-6 prezinta o secventa tipica de detectie si tratare a eventualelor erori de initializare grafica. Liniile 7-9 prezinta modul de preluare (în variabile globale) a caracteristicilor modului grafic curent, adica rezolutia (orizontala si verticala) si numarul maxim de culori (paleta). Urmeaza apoi trasarea dreptunghiului de încadrare maxima pe ecran, prin apelul la procedure Rectangle si afisarea mesajului dorit în modul grafic prin OutTextXY. Dupa ce toate operatiunile dorite în modul grafic s-au executat, modul grafic este oprit prin rutina CloseGraph, revenindu-se în modul text existent anterior (i.e. înainte de deschiderea modului grafic). Rezultatele executiei programului X1 sunt prezentate în figura 1 Fig. 1) Ecran rezultat în urma executiei normale (fara erori) a programului X1 (a fost decupata zona complet neagra!)

Alte referate din materia: Informatica

Nr. Nume referat Hits
1 mtSZPKbW 20
2 TkkvMlabSupl 50
3 qzpymq@dxuzju.com 147
4 email@gmail.com 269
5 pfuqxd@exjswl.com 287
6 ncqcez@hdtnnq.com 244
7 Hard 722
8 ISTORIA INTERNET-ULUI 782
9 Impera 469
10 Info Doc 524
11 Info-TIRON 467
12 Informatica - Grafica pentru web 938
13 Informatica - Introducere in HTML 711
14 Initiere in pc 701
15 Instalarea sistemului de operare Windows 593
16 Internetul ca sursa de comunicare 580
17 Istoria Internetului 617
18 Istoria calculatorului 539
19 Istoria metodelor de proiectare 359
20 Java visavis de C++ 401
21 Java vizavi de C 333
22 LIMBAJUL DE PROGRAMARE PASCAL - Programul defineste tipul salariat, o inregistrare cu variante, valorile citite fiind salvate in fisierul salariat.dat 0
23 Limbajul C 413
24 Lista vinuri prg 322
25 Lotus software 293
Trimite un referat !
Referatul tau ii poate ajuta si pe ceilalti! Ajuta-ti colegii!

Ai un referat facut de tine si consideri ca este bun si original ? Trimite-ti lucrarea ta si poti castiga premii, ajutandu-ti colegii sa ia note bune!

Trimite un referat!
Cere un
referat !
Ai nevoie de un referat bun si nu il gasesti ?

Noi te ajutam sa iti faci referatul de care ai nevoie. Da-ne detalii despre lucrarea pe care trebuie sa o redactezi si noi vom scotoci pentru tine!

Cere un referat!