| ★ APPLICATIONS ★ CREATION GRAPHIQUE ★ CHERRY-PAINT (CPC REVUE N°10 -> 15) ★ |
| CHERRY PAINT (CPC Revue n°10) | CHERRY PAINT (CPC Revue n°11) | CHERRY PAINT (CPC Revue n°12) | CHERRY PAINT (CPC Revue n°13) | CHERRY PAINT (CPC Revue n°15) |
Bonjour. Ce mois-ci, nous allons voir la suite des options "Couper-coller", c'est-à-dire le contenu du menu Edition.Le menu déroulant Edition comporte 7 rubriques (voir figure 1 ) dont nous allons détailler le fonctionnement. Avant d'utiliser une option d'édition, il est nécessaire qu'il y ait un cadre pointillé dans la zone de travail, sinon l'option n'agit pas. Effectivement, comme le traitement ne se fait qu'à l'intérieur d'un cadre il faut qu'un cadre ait été créé. Je vous rappelle qu'un cadre pointillé est "fabriqué” en utilisant l'outil "petit cadre pointillé", il suffit alors de cliquer sur l'un des coins, puis de déformer le cadre jusqu'à l'obtention de la taille désirée ; lorsqu'on arrête alors de cliquer, le cadre est définitif. OPTION "COPIE" "Copie" transfère le contenu du cadre pointillé vers la zone mémoire réservée au "Couper-Coller". Le cadre est conservé et le contenu du cadre n'est pas affecté ; ceci permet de faire des traitements multiples. Il n'est en effet pas nécessaire de redéfinir le cadre (voir figure 2). Pour ceux qui prennent le train en marche, je vous rappelle que pour obtenir "Copie”, par exemple, il faut d'abord déplacer la petite flèche sur le mot "Edition" dans la barre de menus. En cliquant, le menu déroulant s'ouvre, il suffit alors de se déplacer sur l'option voulue. L'action est effectuée lorsqu'on arrête de cliquer. OPTION "COUPE" Le fonctionnement de coupe est similaire à celui de "Copie", sauf qu'après l'exécution, la zone d'écran encadrée est remise à blanc, le cadre est conservé (voir figure 3). OPTION "COLLE" "Colle" effectue le traitement inverse de "Copie", c'est-à-dire que la zone d'écran sauvegardée par "Coupe" ou "Copie" est restituée sur l'écran. La manipulation est simple : lorsqu'on sélectionne "Colle", et à condition d'avoir déjà "Coupé" ou "Copié" une zone d'écran, on obtient la petite flèche. En cliquant à l'extérieur de la fenêtre de travail, l'option "Colle" est annulée et on retrouve le curseur courant. Par contre, en cliquant à l'intérieur de la fenêtre, la flèche est remplacée par un cadre pointillé de la taille de la zone précédemment sauvegardée par "Coupe" ou "Copie". A ce moment, il est toujours possible de déplacer ce cadre pour ajuster finement sa position. Lorsqu'on arrête de cliquer, la zone d'écran sauvegardée est recopiée sur l'écran à l'emplacement du cadre, où tout ce qui se trouvait à cet endroit auparavant est effacé. Comme je le disais tout à l'heure, il n'est possible de quitter le mode "Colle” qu'en cliquant à l'extérieur de la fenêtre de travail, par conséquent en cliquant plusieurs fois à l'intérieur de cette fenêtre, il es possible de coller plusieurs fois la zone d'écran sauvegardée. Pour dupliquer un objet sur l'écran, il faut donc d'abord l'encadrer, puis le couper ou le copier, et enfin le coller en autant d'exemplaires que nécessaire (voir figure 4). OPTION "INVERSE" "Inverse", comme son nom l'indique, inverse la couleur de chaque point de la zone de travail contenu à l'intérieur du cadre. Un point noir deviendra donc blanc et vice-versa. Cette option permet d'obtenir un effet de négatif intéressant dans certains cas (voir figure 5). OPTION "EFFACE" "Efface" met à blanc tous les points contenus à l'intérieur du cadre pointillé. Après l'effacement, le cadre est supprimé. Cette fonction permet d'effacer rapidement de grandes zones d'écran de formes quelconques, et, dans ce cas, elle est bien plus pratique que la gomme (voir figure 6). OPTION "MIROIR HORIZONTAL" Cette fonction permet de renverser le contenu du cadre pointillé suivant un axe horizontal passant par le milieu du cadre. Concrètement, si mon cadre contient un bonhomme debout avant la fonction miroir horizontal, il se retrouve la tête en bas après (et non pas assis, comme vous auriez pu le croire). Allez donc voir figure 7 : un petit dessin valant mieux qu'un long discours.... (à propos, tous les dessins ont bien sûr été réalisés avec Cherry-Paint, pas avec Mac Paint !). OPTION "MIROIR VERTICAL” Cette fonction est identique à la précédente, donc relisez le paragraphe précédent en remplaçant '"horizontal"' par '"vertical" et '"la tête en bas" par "toujours debout" : ne comptez pas sur moi pour vous en dire plus (figure 8) ! Après le mode d'emploi, voyons maintenant le fonctionnement des options Edition du point de vue du "technicien". Le principal problème provient du fait que le cadre peut ne pas se terminer entre deux octets, par exemple, les 4 premiers bits d'un octet peuvent se trouver dans le cadre, alors que les 4 derniers se trouvent à l'extérieur : par conséquent, le traitement ne devra s'effectuer, dans ce cas, que sur les 4 premiers bits. Il faudra donc, pour chaque premier et chaque dernier octet d'une ligne du contenu du cadre pointillé, effectuer les masquages appropriés pour ne traiter que la partie voulue de l'octet. Voyons, pour commencer, le cas le plus simple : l'option "EffaCe". Pour les octets "entiers", il n'y a pas de problème, il suffit de les remettre à zéro. Par contre, en bout de ligne, s'il n'y a, par exemple, que 3 bits à remettre à 0, il faut masquer cet octet avec 00011111 binaire à l'aide d'un ET logique : OET n'importe quoi fait 0, les 3 bits de gauche sont bien remis à 0. Pour créer ce masque, il faut prendre la coordonnée horizontale du dernier point modulo 8 (8 points par octet). Nous appelerons cette valeur X. Il suffit alors de faire tourner X fois le masque en faisant entrer un 0 pour obtenir la valeur correcte. EXEMPLE : Le dernier point du cadre a la coordonnée 603 : 603 modulo 8 = 3. Il faut effectuer une rotation du masque 3 fois, et il évoluera de la manière suivante : Pour l'option "Inverse", le fonctionnement est sensiblement identique, à part le masquage qui est en OU exclusif (XOR) dans ce cas. Pour l'inversion partielle d'un octet, OU exclusif est très pratique car un bit XOR 1 inverse le bit, alors qu'un bit XOR 0 conserve le bit. Exemple : Pour l'option "Copie", il faut commencer par sauvegarder tous les octets contenus dans le cadre vers une zone de mémoire réservée à cet effet. Ensuite, il faut éliminer tous les points qui ne sont pas à l'intérieur du cadre en appliquant à nouveau un masquage ET sur le premier et dernier octet de chaque ligne dans la mémoire tampon. L'option "Coupe" est en fait la combinaison de "Copie" et de "Efface". Le contenu du cadre est d'abord sauvegardé puis remis à blanc. L'option "Colle" est un peu plus complexe : pour chaque ligne, le traitement suivant est effectué : pour commencer, la ligne est mise à blanc (voir "Efface"), puis des rotations successives sont appliquées à chaque octet de la ligne sauvegardée, de manière à pouvoir la placer au point près. A ce moment, il suffit de faire un OU logique entre cette ligne et la ligne remise à blanc de l'image d'écran et de replacer le résultat dans l'image d'écran. Cette méthode évite d'avoir à traiter de manière particulière les octets extrêmes de chaque ligne. Il faut remarquer qu'il peut être nécessaire de faire jusqu'à 4 rotations successives pour pouvoir atteindre n'importe laquelle des 8 positions possibles sur un octet (4 rotations à gauche ou 4 rotations à droite). Par conséquent, le temps de calcul va dépendre de la position horizontale du cadre modulo 8 (essayez, vous verrez bien !). Pour rentrer le code de ce mois, il faut procéder comme d'habitude :
Sur ce, je vous quitte jusqu'au mois prochain. CPC |
| ![]() |
|