utilisation de la bibliotheque graphic.h
Source / Exemple :
//fait par m_msabri@caramail.com
#include <graphics.h>
#include <conio.h>
#include <iostream.h>
#include <dos.h>
#include <stdio.h>
#include <stdlib.h>
class losange
{
int x,y,dx,dy,couleur; //membres privs
public: //membres publics
losange();
void deplace(int,int,int);
void affiche();
void efface();
int test();
};
losange::losange() // constructeur
{
x=100;
y=100;
dx=80;
dy=120;
couleur=BLUE;
}
void losange::deplace(int depx,int depy,int coul)
{
x=x+depx;
y=y+depy;
couleur=coul;
}
void losange::affiche()
{
int tab[10];
tab[0]=x;tab[1]=y; //On initialise le tableau par les coordonnes du polygne
tab[2]=x+dx/2;tab[3]=y+dy/2;
tab[4]=x;tab[5]=y+dy;
tab[6]=x-dx/2;tab[7]=y+dy/2;
tab[8]=x;tab[9]=y;
setfillstyle(SOLID_FILL,couleur);
fillpoly(5,tab);
}
void losange::efface()
{
int tab[10];
tab[0]=x;tab[1]=y; //on initialise le tableau par les coordonnes des points du polygne
tab[2]=x+dx/2;tab[3]=y+dy/2;
tab[4]=x;tab[5]=y+dy;
tab[6]=x-dx/2;tab[7]=y+dy/2;
tab[8]=x;tab[9]=y;
setcolor(getbkcolor());
setfillstyle(SOLID_FILL,getbkcolor());
fillpoly(5,tab);
}
int losange::test()
{
if (x-dx/2<=0||x+dx/2>=640)
return 1;
else if (y+dy>=480||y<=0)
return 2;
else
return 3;
}
void init_graph()
{
int gdriver = DETECT, gmode, errorcode;
initgraph(&gdriver, &gmode, "");
errorcode = graphresult();
if (errorcode != grOk) //il y a une erreur
{
printf("Graphics error: %s\n", grapherrormsg(errorcode));
printf("Press any key to halt:");
getch();
exit(1); // retour du code d'erreur
}
setbkcolor(3);
}
void main()
{
int a=10,b=10;
losange l;
init_graph();
while(!kbhit())
{
l.affiche();
delay(200);
l.efface();
l.deplace(a,b,BLUE);
if (l.test()==1)
a=-a;
else if (l.test()==2)
b=-b;
}
getch();
closegraph();
}
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.