fill, setFillMode, getFillMode

Définition Utilisation Exemple Côté technique
 

void fill(int x, int y, word couleur);
Remplit une zone avec la couleur spécifiée
Paramètres passés:
x,y: coordonnés du point de départ du remplissage
couleur: couleur de remplissage
Valeur retournée:
aucune

 

void setFillMode(boolean mode);
Choisit le mode de remplissage
Paramètres passés:
COCCINELLE (ou true) pour le mode Coccinelle, STAR (ou false) pour le mode Star
Valeur retournée:
aucune

 

boolean getFillMode(void);
Retourne le mode de remplissage
Paramètres passés:aucun

Valeur retournée:
COCCINELLE (ou true) pour le mode Coccinelle, STAR (ou false) pour le mode Star

 

int fillMode;
Mode actuel
Accès: lecture/ecriture

 

#define COCCINELLE true
#define STAR false

Constantes pour setFillMode()

 

Mode de remplissage:
← Par défaut, le mode de remplissage est dit COCCINELLE, et fill() s'arrête de remplir si la couleur n'est plus la couleur pointée au départ. Cela permet par exemple de changer une couleur que l'on ne connaît pas forcément par une autre. C'est le mode utilisé par Paint de window. Je peux changer la couleur du dos de ma coccinelle (le dessin, pas la voiture!) en démarrant sur du rouge.
→ Si j'avais le dessin de droite et que je désire remplir l'étoile blanche en partant de son centre, cela remplirait de blanc la partie orangée, mais pas le reste.
← Si on définit le mode de remplissage STAR fill() s'arrête de remplir si on atteint la couleur de remplissage. En remplissant l'étoile blanche, en partant du centre, fill() s'arrêtera bien au bord de l'étoile.
→ Par contre pour la coccinelle ce mode ne permet pas de changer la couleur du dos en vert. Si on pointe dessus, comme il n'y a pas de bordure verte, fill() remplira tout l'écran.

Quand j'ai dessiné la coccinelle, j'ai fait une bordure rouge pour délimiter le dos. Pour la remplir, les deux modes fonctionnent. Il en est de même avec la tête et les points noirs (un cercle et un remplissage) car les cercles ne se superposent pas.

Le remplissage se limite à la partie qui tient dans l'écran et qui tient dans les limites données par la fonction setLimites()

Voir aussi:
- setLimites(); Limite la zone de dessin
- setDrawInverse(); Choix du mode dessin ou inversion
- RGBcolor(); Transforme un triplet RGB en un code couleur
- BLACK, WHITE, ...: Constantes couleurs
- rect(); Trace les bords d'un cadre
- fillRect(); Trace une boîte pleine
- circle(); Trace un cercle