Sunteți pe pagina 1din 7

Grafic n c++

By

Petra Berindea
Grafic n C++ Code blocks

GRAFIC N C++
Utilizarea modului grafic n Code blocks necesit folosirea bibliiotecii
# include < graphics.h>

PRIMII PAI
n seciunea main(), funcia principal a programului se introduce
int g=DETECT,d;
initgraph(&g,&d,"\tc\bgi");
Asfel se iniializeaz modulul graphic.
Sau fereastra care va vizualiza desenele realizate poate fi iniializat i astfel
initwindow( width, height) unde width reprezint limea iar height nlimea
ferestrei.
De ex. initwindow(500,500);

FUNCII SIMPLE

LINIE
Funia line(int x1, int y1, int x2, int y2);
Traseaz o linie n funcie de parametri dai, (x1,y1) sunt coordonatele
punctului de start, (x2,y2) coordonatele punctului la sfrit.
Obs! Pot fi folosite funciile
Funcia moveto(int a, int b) mut poziia curent la coordonatele (a,b)
Funcia lineto(int x, int y) traseaza o linie de la poziia curent pn la
(x,y)
Funcia linerel(int dx, int dy); traseaz o linie de la poziia curent pn
la punctual cu distana (dx,dy)

Exemplu
Un cub desenat doar prin linii

Cod Surs
# include <iostream>
#include<graphics.h>
using namespace std;
main()
{
initwindow(700,700);
line(200,200,200,400);
line(200,400, 400, 400);
line(200,200,400,200);
line(400,200,400,400);
line(400,200,500,100);
line(200,200,300,100);
line(300,100,500,100);
line(400,400,500,300);
line(500,100,500,300);
line(200,400,300,300);
line(300,300,500,300);
line(300,300,300,100);
getch();
}

BAR

tabl de ah
Funcia bar (int left, int top, int right, int bottom);
-

traseaz un dreptunghi cu coordonatele( stnga


,sus, dreapta, jos) UMPLUT

Exemplu

# include <iostream>
#include<graphics.h>
using namespace std;
main()
{
initwindow(700,700);
bar(50,50,100,100);
bar(50,150,100,200);
bar(100,100,150,150);
bar(150,50,200,100);
bar(150,150,200,200);
getch();
}

PARALELIPIPED
Funcia
bar3d(int left, int top int right , int bottom, int depth, int topflag)
Paralelipedul se deseneaz prin
punctul (stamga, sus) ;
punctul (dreapta, jos) ;
depth determin adancimea
topflag determin desenarea/ ascunderea prii de sus, dac e diferit de 0
se deseneaz altfel nu.

De exemplu
TREPTE

# include <iostream>
#include<graphics.h>
using namespace std;
main()
{
initwindow(750,750);setcolor(BLUE);
bar3d(100, 100, 200, 200, 100,1);
bar3d(200, 200, 300, 300, 100,1);
bar3d(300, 300, 400, 400, 100,1);
bar3d(400, 400, 500, 500, 100,1);
getch();
}

DREPTUNGHI

# include<iostream>
# include<graphics.h>
main()
{
initwindow(700,700); setcolor(CYAN);
int i=100, j=500;
while (i<=500 && j>=500)
{
rectangle(i, i, j,j);
i=i+10;
j=j-10;
delay(70);
}

CERCUL
Se deseneaz folosind funcia circle(int x, int y, int radius)

getch();
}

Centrul cercului se afl la coordonatele (x,y) , radius este lungimea razei.

Exemplu cercuri concentrice cu culori variabile, cresctor


Obs. Modific pentru cercuri descresctoare.

#include<graphics.h>
main()
{
initwindow(700,700);
int j=1;
for(int r=10;r<=700;r=r+15)
{
setcolor(j);
circle(getmaxx()/2, getmaxy()/2,r);
j++;
if(j==14) j=1
delay(20);
}
getch();
}

S-ar putea să vă placă și