Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
pixel_drawing_mode
mode d'actualisation des couleurs RVB des pixels lors des tracés graphiques
Description
Les couleurs des pixels sont encodées selon les 3 canaux RVB (Rouge Vert Bleu). Pour chaque pixel, chaque canal a une valeur entière sur [0, 255] (uint8).
.pixel_drawing_mode est une des propriétés des  fenêtres graphiques. Elle indique l'opération binaire à effectuer pour chaque canal RVB de chaque pixel entre la couleur préexistante du pixel de la fenêtre avant le tracé, et la couleur du même pixel de l'objet à tracer. Scilab n'actualise pas nécessairement la couleur du pixel en imposant la couleur de l'objet à tracer comme nouvelle couleur "opaque". La couleur du fond peut par exemple être prise en compte, autorisant certains effets de transparence.
srcest la couleur du pixel considéré dans l'objet à tracer / dessiner.curest la couleur courante préxistante du même pixel, avant le tracé.
pixel_drawing_mode sont listées ci-après, suivies de l'opération binaire correspondante. Dans ces expressions logiques,
            NOT vsignifie255 - va AND bsignifiea & ba OR bsignifiea | ba XOR bsignifie(a OR b) AND NOT (a AND b)
| Valeur | opération effectuée / résultat | 
|---|---|
| "copy" (par défaut) | src | 
| "copyInverted" | NOT src | 
| "noop" | cur | 
| "invert" | NOT cur | 
| "set" | White | 
| "clear" | Black | 
| "equiv" | cur XOR (NOT src) | 
| "xor" | cur XOR src | 
| "or" | cur OR src | 
| "orInverted" | cur OR (NOT src) | 
| "orReverse" | (NOT cur) OR src | 
| "nor" | NOT (cur OR src) | 
| "and" | cur AND src | 
| "andInverted" | cur AND (NOT src) | 
| "andReverse" | (NOT cur) AND src | 
| "nand" | NOT (cur AND src) | 
Exemples
pxmodes = ["copy", "copyInverted", "equiv", "xor", .. "and", "nand", "andReverse", "andInverted", .. "or", "nor", "orReverse", "orInverted", .. "noop", "set", "clear", "invert" .. ]; // Dimensions et recouvrement marginal des fenêtres en damier s = 300; hm = 8; vm = 52; // for k = 16:-1:1 m = pxmodes(k); // Position de la fenêtre i = fix((k-1)/4); j = modulo(k-1,4); // Création et paramétrage de la fenêtre f = figure("toolbar_visible","off", .. "menubar_visible","off", .. "infobar_visible","off", .. "figure_position", [j*(s-hm), i*(s-vm)], .. "figure_size", [s s], .. "background", color("grey85"), .. "pixel_drawing_mode", m .. ); drawlater // Configuration du tracé b = 0.82; plot2d([],[],0,"051"," ",[-1 -1 1 1]*b) plot2d([-1 1]*b,[0 0]) a = gca(); a.isoview = "on"; a.tight_limits = "on"; title(m,"fontsize",4) // Affichage de 3 disques rouge, vert et bleu se recouvrant partiellement xfarc(-0.7, 0.8, 1, 1, 0, 360*64) e = gce(); e.background = color("red"); e.fill_mode = "on"; xfarc(-0.2, 0.5, 1, 1, 0, 360*64) e = gce(); e.background = color("blue"); e.fill_mode = "on"; xfarc(-0.7, 0.2, 1, 1, 0, 360*64) e = gce(); e.background = color("green"); e.fill_mode = "on"; drawnow end // Ménage : on supprime les 16 fenêtres b = messagebox(_("Presser OK pour fermer les fenêtres"),"Clore la démonstration", "question", "modal"); w = winsid(); xdel(w($-15:$));
![]()
Voir ausi
- figure_properties — description of the graphics figure entity properties
 - colordef — Set default color values to display different color schemes
 - lighting — Lighting overview
 - Matplot — 2D plot of a matrix using colors
 
| Report an issue | ||
| << gdf | Fenêtres - Figures | scf >> |