UpsPct.IImage.Appliquer

Procedure Appliquer(Traitement : Nul Ou Procedure (X : Entier, Y : Entier, C : Nul Ou Couleur), M : Nul Ou MasqueDessin=Nul);

Procedure Appliquer(Traitement : Nul Ou Procedure (X : Entier, Y : Entier, C1 : Nul Ou Couleur, C2 : Nul Ou Couleur), I : Nul Ou IImage, M : Nul Ou MasqueDessin=Nul);

Fonction Optimiser(NulAbsorbant) Appliquer(Traitement : Nul Ou Fonction (X : Entier, Y : Entier, C : Nul Ou Couleur) Retourner Nul Ou Couleur, C : Booleen=Faux, M : Nul Ou MasqueDessin=Nul) Retourner Nul Ou IImage;

Fonction Optimiser(NulAbsorbant) Appliquer(Traitement : Nul Ou Fonction (X : Entier, Y : Entier, C1 : Nul Ou Couleur, C2 : Nul Ou Couleur) Retourner Nul Ou Couleur, I : Nul Ou IImage, C : Booleen=Faux, M : Nul Ou MasqueDessin=Nul) Retourner Nul Ou IImage;

Description

La méthode Appliquer permet d'appliquer le traitement Traitement à chaque pixel de l'image courante.

L'image est parcourue de la première ligne à la dernière puis de la première colonne à la dernière.

Si le paramètre R est non Nul, alors seuls les pixels dans ce rectangle sont parcourus.

Si Traitement est une procédure, alors il n'y a pas de résultat. Si Traitement est une fonction, alors le résultat est l'image de même type que l'image courante et dont le bitmap est composé des couleurs des résultats des appels.

Si Traitement possède trois paramètres, alors seule l'image sur laquelle s'applique la méthode Appliquer est parcourue. Si Traitement possède quatre paramètres, alors l'image sur laquelle s'applique la méthode Appliquer et l'image I sont parcourues en parallèle.

Les paramètres de Traitement sont les suivants :

Les image courante et I doivent être de même taille.

Si Traitement est Nul ou si I est Nul, alors le résultat est Nul.

Exemple

Variable
/*****/

/****************************************************************/
Procedure AfficherPixel(X : Entier, Y : Entier, C : Nul Ou Couleur)
/* Objet : Affiche le pixel. */
/****************************************************************/
Debut
MonPinceau.Modifier(PinceauContinu, C); MonContexte.DessinerPoint(Point(X,Y), MonPinceau);
Fin Procedure

Principal
/*******/
Variable
/******/

Debut
...
I.Appliquer(AfficherPixel);
/* Applique la procedure AfficherPixel. */
...
Fin Principal

Traduction

---------