classes d`objets graphiques en c++

Transcription

classes d`objets graphiques en c++
CLASSES D’OBJETS GRAPHIQUES
EN C++
On dispose de 4 classes d’objets permettant d’utiliser les capacités graphiques des machines.
La classe Fenetre
La classe Fenetre permet de faire apparaître des fenêtres à l’écran puis d’y dessiner et d’y écrire. Les
points (pixels) dans une fenêtre sont repérés par leurs coordonnées qui sont 2 entiers dont le premier augmente
quand on se déplace vers la droite et le second lorsque l’on se déplace vers le bas. Le coin supérieur gauche de la
fenêtre a donc les coordonnées 0 et 0. L’unité de mesure est le pixel. Les méthodes de cette classe sont :
1°) Construction de fenêtres
Il existe 2 constructeurs pour la classe Fenetre. L'un, sans paramètre nécessite l'utilisation de la méthode
apparait (voir ci-dessous). L'autre possède les même paramètres que la méthode apparait et fait apparaître la
fenêtre crée à l'écran.
Fenetre ()
Fenetre (char[], int, int, int=0, int=0, int=65535, int=65535, int=65535)
Voir la méthode apparait ci-dessous pour l'explication des paramètres.
2°) Apparition et destruction de fenêtres :
void apparait (char[]="Sans nom", int=400, int=400, int=0, int=0, int=65535, int=65535, int=65535)
Fait apparaître une fenêtre à l’écran.
le 1er paramètre est le titre de la fenêtre (chaîne de caractères). Par défaut la fenêtre est intitulée "Sans
nom"
les 2 paramètres suivants premiers entiers définissent respectivement la largeur et la hauteur de la
fenêtre. La taille par défaut est 400 pixels par 400 pixels.
les 2 paramètres suivants définissent les coordonnées du coin supérieur gauche de la fenêtre à l’écran.
La position par défaut est en haut à gauche de l'écran.
les 3 derniers paramètres définissent la couleur du fond par ses composantes rouge, verte et bleue à
l'aide d'entiers compris entre 0 et 65535. La couleur par défaut est du blanc
void disparait ()
La fenêtre disparaît de l’écran.
3°) Gestion des dimensions et de la position des fenêtres
void deplacerEn (int, int)
Déplace le coin supérieur gauche de la fenêtre aux coordonnées passées en paramètre.
int hauteur ()
Retourne la hauteur de la fenêtre.
int largeur ()
Retourne la largeur de la fenêtre.
int coordEnX ()
Retourne la coordonnée en x du coin supérieur gauche de la fenêtre.
int coordEnY ()
Retourne la coordonnée en y du coin supérieur gauche de la fenêtre.
4°) Gestion des couleurs
Couleur couleurFond ()
Retourne la couleur du fond de la fenêtre : la valeur retournée est un objet de classe Couleur (voir plus
loin).
void choixCouleurTrace (int, int, int)
void choixCouleurTrace (Couleur)
Choix de la couleur utilisée pour les tracés (dessins et textes) : la couleur peut être définie par ses
composantes rouge, verte et bleue à l'aide d'entiers compris entre 0 et 65535 ou par un objet de classe
Couleur (voir plus loin).
.
5°) Dessins
Pour tous les dessins la couleur de tracé est celle définie par choixCouleurTrace (voir ci-dessus).
void traceLigne (int, int, int, int, int=1)
Trace une ligne du point dont les coordonnées (x,y) sont données par les 2 premiers paramètres à celui
dont les coordonnées (x,y) sont données par les 2 suivants. Le 5ème paramètre définit l’épaisseur de la
ligne en pixels (1 par défaut).
void traceArc(int, int, int, int, int=0, int=360*64, int=1)
Trace un arc contenu dans un rectangle dont les coordonnées (x,y) du coin supérieur gauche sont données
par les 2 premiers paramètres, la largeur et la hauteur par les 2 suivants. Le 5 ème paramètre indique
l’angle de début de tracé de l’arc en 1/64 ème de degré. Le 6 ème paramètre indique l’angle d’arc tracé en
1/64 ème de degré. Le 7ème paramètre définit l’épaisseur de la ligne en pixels (1 par défaut).
void remplitRectangle(int, int, int, int)
Trace un rectangle plein dont les coordonnées (x,y) du coin supérieur gauche sont données par les 2
premiers paramètres, la largeur et la hauteur par les 2 derniers.
void remplitEllipse(int, int, int, int)
Trace une ellipse pleine contenue dans un rectangle dont les coordonnées (x,y) du coin supérieur gauche
sont données par les 2 premiers paramètres, la largeur et la hauteur par les 2 derniers.
6°) Textes
Pour tous les textes la couleur de tracé est celle définie par choixCouleurTrace (voir ci-dessus).
void choixFonte(char *, int=12, gboolean=FALSE, gboolean=FALSE )
Choix d’une fonte de caractères pour écrire. Le 1er paramètre est un nom de fonte connue comme ("times",
"helvetica", "courier" ou "symbol" ...). Le 2ème paramètre est la taille de la police (12 par défaut). Le
3ème paramètre (TRUE ou FALSE) indique si l'écriture est en gras ou non (non par défaut). Le 4ème
paramètre (TRUE ou FALSE) indique si l'écriture est en italiques ou non (non par défaut). Attention,
certaines polices ne sont disponibles que dans certaines tailles et n'extitent pas en italiques ou en gras.
Si la fonte demandée n'est pas disponible, un message d'erreur est affiché et la fonte précédemment
sélectionnée est conservée.
La fonte par défaut est "Times" en 12 ni gras ni italiques.
void ecrit(int, int, char *, gboolean=TRUE)
void ecrit(int, int, int, gboolean=TRUE)
Ecrit la chaîne ou le nombre passé en 3 ème paramètre aux coordonnées (x,y) données par les 2 premiers
paramètres. Ces coordonnées désignent le coin en bas à gauche du texte. Le dernier paramètre indique
si l’écriture se fait en mode opaque (true) ou transparent.
int hauteurTexte(char *)
Retourne la hauteur en pixels dans cette fenêtre du texte passé en paramètre. Cette hauteur dépend bien entendu
de la fonte choisie par choixFonte (voir ci-dessus).
int longueurTexte(char * )
Retourne la longueur en pixels dans cette fenêtre du texte passé en paramètre. Cette longueur dépend bien
entendu de la fonte choisie par choixFonte (voir ci-dessus).
7°) Images
void afficheImage(char *, int=0, int=0);
Affiche dans la fenêtre l’image contenue dans le fichier dont le nom est donné en premier paramètre. Les deux
autres paramètres permettent de définir la position de l’image dans la fenêtre (coordonnées du coin supérieur
gauche de l’image).
void afficheImage(Image , int=0, int=0);
Affiche dans la fenêtre l’image contenue dans l’objet de classe Image donné en premier paramètre. Les deux
autres paramètres permettent de définir la position de l’image dans la fenêtre (coordonnées du coin supérieur
gauche de l’image).
8°) Effacement de la fenêtre
void effacer()
Efface tout le contenu de la fenêtre.
9°) Délai
void delai (int)
Permet d'attendre un délai exprimé en ms par le paramètre.
La classe Souris
La classe souris permet d’utiliser la souris dans une fenêtre. Chaque objet souris doit être associé à une fenêtre, il
permettra alors de connaître les actions faites sur la souris lorsqu’elle se trouve dans cette fenêtre. Les méthodes
de cette classe sont :
void associerA(Fenetre &)
Permet d’associer la souris à une fenêtre au préalable créée.
gboolean testeBoutons(int &, int &, int &)
Permet de connaître les actions faites sur les boutons de la souris. La valeur de retour est FALSE si
aucune action n’a eu lieu et TRUE dans le cas contraire. Lorsqu’une action a eu lieu, les 2 premiers
paramètres recevront les coordonnées du point de la fenêtre où se trouvait la souris à ce moment là
tandis que le dernier paramètre indique quel bouton a été activé (1 pour le bouton de gauche, 2 pour
celui du centre et 3 pour celui de droite).
void position(int &, int&)
Permet de connaître à tout moment la position de la souris.
coordonnées du point de la fenêtre où se trouve la souris.
Les deux paramètres recevront les
La classe Couleur
La classe Couleur permet de manipuler des couleurs. Les méthodes de cette classe sont :
Couleur(int=0, int=0, int=0)
Qui construit une couleur définie par ses composantes rouge, verte et bleue à l'aide d'entiers compris entre
0 et 65535. La construction sans paramètre d'une couleur donne du noir.
void changeCouleur(int, int, int)
Change la couleur de l'objet. La nouvelle couleur est définie par ses composantes rouge, verte et bleue à
l'aide d'entiers compris entre 0 et 65535.
int rouge()
int vert()
int bleu()
Retourne l'une des composantes de la couleur (entier entre 0 et 65535).
La classe Image
La classe Image permet de manipuler des images crées à partir de fichiers. Les méthodes de cette classe sont :
Image(char *)
Qui construit une image à partir du contenu du fichier dont le nom est passé en paramètre.
int hauteur ()
Retourne la hauteur de l’image.
int largeur ()
Retourne la largeur de l’image.