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.