#!/bin/csh
#######################################################################################################################################
# #
# C A C H E M E N T D ' U N E I M A G E A T R A V E R S U N E A U T R E E N V R A I E S C O U L E U R S #
# V I A U N M A S Q U E " P L U S V A S T E " Q U E L A L U M I N A N C E D U C A C H E : #
# #
# #
# Utilisation : #
# #
# $xci/cache.31$Z <nom_image_vraies_coul> <nom_masque_vraies_coul> <nom_resultat_vraies_coul> #
# #
# #
# Author of '$xci/cache.31$Z' : #
# #
# Jean-Francois COLONNA (LACTAMME, 20090529120228). #
# #
#######################################################################################################################################
set imageA=$1
set masqueA=$2
set imageR=$3
FileTmpB nomM
$xci/or_03$X A1=$masqueA$ROUGE A2=$masqueA$VERTE A3=$masqueA$BLEUE $formatI \
| $xci/seuil$X seuil=$NOIR $formatI \
| $xci/complement$X R=$nomM $formatI
# La difference avec 'v $xci/cache.21$Z luminance.01.X' est destinee a prendre en compte #
# qu'en toute generalite deux palettes differentes ne correspondent evidemment pas, en #
# general, a la meme luminance. Dans le cas, par exemple, d'une image 'IMAGE' en fausses #
# couleurs qui est passee en vraies couleurs via deux palettes differentes '1' et '2' #
# pour donner les deux images 'IMAGE1' et 'IMAGE2', ces deux dernieres n'auront pas la #
# meme luminance. Cela s'est vu en generant 'v $xiirv/STRU.bas.22$Z_BUFFER' pour laquelle #
# 'PaLeTtE_3=$xiP/bleue.01' alors que pour generer 'v $xiirv/STRU.bas.22' on avait utilise #
# 'PaLeTtE_3=$xiP/gris.01'. Les masques correspondant aux images '$xTV/EPAISSEUR.24.3' et #
# '$xTV/CHAMP.24.3' calcules via '$xci/luminance.01$X' etaient donc differents... #
FileTmpB imageT
# introduit le 20221206144022 a cause du cas ou '$imageA' et '$imageR' sont identiques #
# (voir par exemple : 'v $xiirv/.JULK.I2.1.$U .xTV.MANDELBROT.._____ImageR.._____ImageR'). #
execRVB $xci/and$X A1=$imageA%s A2=$nomM R=$imageT%s $formatI
# Masquage via la luminance de '$masqueA'. #
execRVB $xci/or_02$X A1=$imageT%s A2=$masqueA%s R=$imageR%s $formatI
# Et enfin, "cachement"... #
# #
# La modification du 20080911142301 est destinee a corriger un defaut qui peut intervenir #
# et qui est du au fait que la luminance d'un point peut etre nulle (en mode "standard=VRAI") #
# alors que l'un ou plusieurs des niveaux {$ROUGE, $VERTE,$BLEUE} ne le sont pas. L'appel de #
# '$xci/cache.11$Z' provoquait dans ce cas des anomalies chromatiques sur les composantes #
# correspondantes... #
FileTmpE imageT
FileTmpE nomM