Padro: Tela em modo SVG ! "#$ % #&$ ' Requisitos: r(uivo )egavga*+gi, e a include )gra-.ics*., Preparando o ambiente grfico 1* /eclarar as variveis de controle0 int gd, gm; 1* /etectar se o usurio -ossui uma -laca grfica0 detectgraph( &gd, &gm ); 2* 3niciali4ar o modo grfico initgraph( &gd, &gm, ); 5+s*0 6o es-ao entre as-as fica a -asta onde est locali4ado seu ar(uivo )egavga*+gi, Verificando se o modo grfico foi iniciado com sucesso Comando0 graphresult( ) Se o modo grfico foi ativado com sucesso7 a varivel re-resentada -or gra-.result!' torna8se 4ero* 9%em-lo0 int gd, gm; detectgraph( &gd, &gm); initgraph(&gd, &gm, c:\\tcpp\\bgi); if ( graphresult() != 0) { cut!! "rr n md gra#c ! ; e$it( 0 ); % Principais Funes Grficas closegraph(); 8 Fec.ar o modo grfico e retornar ao modo te%to cleardevice(); 8 ):im-a, a tela grfica Introduo Computao Gilberto Holms Universidade Santa Ceclia Pgina 1 setcolor( cr ); 8 tri+uto de cor7 valor inteiro entre $ e 1; onde $ re-resenta a cor <:C= e 1; a cor >?3T9* s cores -odem ser codificadas -or sua constante re-resentativa !<:U97 @9/7 CA67 A9::5>7 ****** '* 5+s*0 o comando setcolor!' nBo -reenc.e C 9%em-lo0 setclr( &'(" ); setbkcolor( cr ); 8 9scol.e a cor de fundo da tela* 9%em-lo0 setb)clr( *+"", ); putpixel( cl , lin , cr); 8 Plotar um -onto colorido nas coordenadas es-ecificadas ! coluna 7 lin.a '* 9%em-lo0 putpi$el( -.0 , ./0 , +"0); rectangle( ci , li , cf , lf ); 8 /esen.a um retDngulo a -artir das coordenadas de sua diagonal* 9%em-lo0 rectangle( 0 , 0 , 1-2 , /32 ); circle( cl , lin , rai ) 8 /esen.a um circulo com o centro nas coordenadas es-ecificadas* 9%em-lo0 circle( -.0 , ./0 , 40 ); bar( ci , li , cf , lf ); 8 /esen.a um retDngulo -reenc.ido com a cor corrente !setcolor'* 9%em-lo0 setclr( *+"", ); Introduo Computao Gilberto Holms Universidade Santa Ceclia Pgina 2 bar( 0 , 0 , 1-2 , /32 ); bar3d( ci , li , cf , lf , p , t ); 8 /esen.a um cu+oE-aralele--edo de -rofundidade )p,* 5 -arDmetro )t, serve -ara o desen.o ou nBo da tam-a do cu+o ! 1 ou 0 '* 9%em-lo0 bar-d( 40 , 400 , 50 , 4.0 , 5 , 4 ); setfllstyle( tip , cr ); 8 9s-ecifica o ti-o e a cor da te%tura de -reenc.imento !-re-ara a tinta'* 9%em-lo0 set#llst6le( 78'90:;9'' , +"0 ); foodfll( cl , lin , cr:brda ); 8 Preenc.er com a te%tura atri+uda !setfillstFle' a -artir das coordenadas es-ecificadas7 limitadas -ela cor da +orda* 9%em-lo0 setclr( &'(" ); rectangle( 40 , -00 , /00 , -<0 ); set#llst6le( 78'90:;9'' , +"0 ); =d#ll( 44 , -04 , &'(" ); >>+et?ngul de brda a@ul preenchid cm a cr AermelhaB moveto( cl , lin ); 8 Gove o -i%el ativo -ara as coordenadas es-ecificadas !e(uivalente ao goto%F do modo te%to'* 9%em-lo0 mAet( -.0 , ./0 ); setlinestyle( tip , pattern , espessura ); 8 /efine o estilo da lin.a a ser usada* 5 -attern -adrBo H )1,* 9%em-lo0 Introduo Computao Gilberto Holms Universidade Santa Ceclia Pgina # setlinest6le( 78'90:'9," , 4 , - ); line( ci , li , cf , lf ); 8 /esen.a uma lin.a a -artir das coordenadas dos -ontos final e inicial* 9%em-lo0 line( 40 , 400 , 50 , 4.0 ); lineto( cl , lin ); 8 /esen.a uma lin.a a -artir do -i%el ativo atH o -onto es-ecificado -ela coordenada* 9%em-lo0 mAet( 40 , 400 ); linet( 50 , 4.0 ); arc( cl , lin , ang:ini , ang:#n , rai ); 8 /esen.a um arco com as coordenadas do seu centro e os Dngulos final e inicial do arco em graus* 9%em-lo0 arc( -.0 , ./0 , 0 , 20 , 40 ); ellipse( cl , lin , ang:ini , ang:#n , raiC , raiD ); 8 /esen.a uma eli-se com as coordenadas do seu centro7 Dngulos final e inicial !-ara uma eli-se com-leta coloca8se os Dngulos com $ e 2"$' e os raios nos ei%os I e A* 9%em-lo0 ellipse( -.0 , ./0 , 0 , -10 , 50 , .0 ); installuserfont( patch ); 8 3nstala uma nova fonte -ara seu uso no modo grfico !J *C?@'* Se ela for carregada com sucesso7 retorna um numero inteiro de identificaBo -ara sua c.amada na funBo sette%tstFle* Caso a memKria reservada -ara uso de fontes internas estiver lotada7 a funBo retorna o valor L11 !gr9rror'* 9%em-lo0 int fnte; fnte = installuserfnt( E:\\FEGG\\;8,F"BEH+ ); if (fnte == gr"rrr) Introduo Computao Gilberto Holms Universidade Santa Ceclia Pgina ; fnte = 0";I('F:;8,F; sette$tst6le( fnte , H8+9J:09+ , / ); >> 9nstala e seta a fnte fnteBchr para us e >> cas haKa err, trca para a fnte padrL settextstyle( tip , ei$:direML , tamanh ); 8 /efine o estilo do te%to a ser usado no modo grfico* 9%em-lo0 sette$tst6le( 78'90:F"CF , H8+9J:09+ , / ); outtext( te$t ); 8 3m-rime um te%to na tela grfica a -artir do -i%el ativo* 6Bo aceita nMmeros ou caracteresN aceita a-enas )Strings, !cadeias de caracteres'* 9%em-lo0 utte$t( 9st eh uma 7tring ! ); outtextxy( lin , cl , te$t ); 8 3m-rime um te%to na tela grfica a -artir das coordenadas es-ecificadas* 6Bo aceita nMmeros ou caracteresN aceita a-enas )Strings, !cadeias de caracteres'* 9%em-lo0 utte$t$6( -.0 , ./0 , 9st eh utra 7tring ! ); textheight( te$t ); 8 @etorna o valor da altura ocu-ada -elo te%to em -i%els7 levando em conta os atri+utos do sette%tstFle !taman.o do te%to e ti-o de fonte'* 6Bo aceita nMmeros ou caracteresN aceita a-enas )Strings, !cadeias de caracteres'* textwidth( te$t ); 8 @etorna o valor do com-rimento ocu-ado -elo te%to em -i%els7 levando em conta os atri+utos do sette%tstFle !taman.o do te%to e ti-o de fonte'* 6Bo aceita nMmeros ou caracteresN aceita a-enas )Strings, !cadeias de caracteres'* 9%em-lo0 int cl , lin; Introduo Computao Gilberto Holms Universidade Santa Ceclia Pgina " char Nte$t; te$t = Oinha 7tring n mei da tela !; cl = te$tPidth( te$t ); lin = te$theight( te$t ); utte$t$6( -.0 Q cl>. , ./0 Q lin>. , te$t ); >> 8 te$t estR psicinad e$atamente n centr da tela Introduo Computao Gilberto Holms