#!/bin/csh

#######################################################################################################################################
#                                                                                                                                     #
#         C R E A T I O N   D ' U N   T A B L E A U   D ' I M A G E S   ( S A N S   L E S   R E D U I R E )                           #
#         A   P A R T I R   D ' U N E   S E Q U E N C E   D ' I M A G E S  :                                                          #
#                                                                                                                                     #
#                                                                                                                                     #
#         Utilisation :                                                                                                               #
#                                                                                                                                     #
#                   $xci/regroupe.01$Z  <sequenceA> <imageR> <premiere> <pas>                                                         #
#                                       <Nhorizontale> <Nverticale>                                                                   #
#                                       [<postfixe> [<formatR> [<NChif> [<Dilater> [<Cadre> [ECadre> [<NCadre>]]]]]]]                 #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xci/regroupe.01$Z' :                                                                                            #
#                                                                                                                                     #
#                     Jean-Francois COLONNA (LACTAMME, AAAAMMJJhhmmss).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

set                 sequenceA=$1
set                 imageR=$2
set                 premiere=$3
set                 pas=$4
set                 Nhorizontale=$5
set                 Nverticale__=$6
set                 postfixe=$7
set                 formatR=($8)
                                        # '$formatR' a ete introduit le 20030121134623 pour 'v $xiird/AC2B.11.256 p=$xiP/gris.01'.    #
                                        #                                                                                             #
                                        # Le 20071019094054, lors de la generation de 'v $xias/CAYA.A1.5x5', je note qu'en regle      #
                                        # generale, il ne faut pas definir '$formatR' car, en effet, lorsque '$formatR' n'est pas     #
                                        # defini, c'est '$formatI' qui est utilise et ainsi l'image generee '$imageR' a le meme       #
                                        # format que les images de la sequence Argument '$sequenceA'.                                 #
                                        #                                                                                             #
                                        # De plus, si '$formatR' est present et si l'on arrive ici via un 'execRVB', alors il         #
                                        # conviendra de presenter, a l'appel, cet argument '$formatR' sous la forme :                 #
                                        #                                                                                             #
                                        #                   '$K_QD$formatR_???$K_QD'                                                  #
                                        #                                                                                             #
                                        # ou '$formatR_???' designe un format Resultat ('v $xE/.alias.2$vv$Y alias.....execRVB' qui   #
                                        # utilise un 'eval'...).                                                                      #
set                 NChiffres=$9
                                        # Le nombre de chffres de '$sequenceA' a ete introduit le 20091104091616 pour mettre un       #
                                        # fond a 'v $xias/CAYA.A1.5x5'...                                                             #
set                 Dilater=$10
                                        # Le controle de la dilatation a ete introduit le 20091104142757...                           #
set                 Cadre=$11
set                 ECadre=$12
set                 NCadre=$13
                                        # Le controle du cadre a ete introduit le 20231206140631...                                   #

setArgum            NChiffres           `GetParam $xci/regroupe.01$X chiffres`

setArgum            Dilater             VRAI
                                        # La valeur par defaut assure la compatibilite anterieure...                                  #

setArgum            Cadre               $NEXIST
setArgum            ECadre              1
setArgum            NCadre              $GRIS_8
                                        # Les valeurs par defaut assurent la compatibilite anterieure...                              #

set                 SformatR=`echo "$formatI" | $SE -e "s/=/R=/g"`
                                        # Dans ce cas ou le '$formatI' deviendrait le '$formatR'...                                   #

set                 NoMbRe=`ls $sequenceA* | $SE -e "s/\\""$postfixe"'$//' | $WCl`
set                 DeRnIeRe=`calcul $premiere+$NoMbRe-1`
set                 ArGyuMeNts="postfixe=$postfixe premiere=$premiere derniere=$DeRnIeRe pas=$pas chiffres=$NChiffres"
set                 LiStE=`$xci/nombres$X A=$sequenceA $ArGyuMeNts`

set                 MaRgE=4
set                 VaLiDaTiOn=`calculINS $MaRgE*(2*$ECadre)`

if                  (($Cadre == $EXIST) && (($VaLiDaTiOn <= $dimX) && ($VaLiDaTiOn <= $dimY))) then
                                        # Possibilite introduite le 20231206140631...                                                 #
                    set                 EnCaDrEmEnT="$xci/cadre$X epaisseur=$ECadre niveau=$NCadre"
else
                    set                 EnCaDrEmEnT="$xci/neutre$X"
endif

FileTmpB            nomT

FileTmpB            sequenceT

execALB_F           $premiere $DeRnIeRe $EnCaDrEmEnT A=$sequenceA%0$NChiffres""s$postfixe R=$sequenceT.%0$NChiffres""s $formatI

#20231206140631____:$xci/regroupe.01$X  A=$sequenceA postfixe=$postfixe premiere=$premiere pas=$pas chiffres=$NChiffres            \  #
#20231206140631____:                    horizontale=$Nhorizontale verticale=$Nverticale__                                          \  #
#20231206140631____:                    R=$nomT                                                                                    \  #
#20231206140631____:                                                                                                         $formatI #

$xci/regroupe.01$X  A=$sequenceT.                   premiere=$premiere pas=$pas chiffres=$NChiffres                                     \
                    horizontale=$Nhorizontale verticale=$Nverticale__                                                                   \
                    R=$nomT                                                                                                             \
                                                                                                                        $formatI
                                        # Construction du tableau HxV demande.                                                        #
                                        #                                                                                             #
                                        # L'argument "chiffres=" a ete introduit le 20091104091616...                                 #

FileTmpE            sequenceT

if                  ("$formatR" == "$K_VIDE") then
                                        # Ce test a ete introduit le 20030121134623 pour 'v $xiird/AC2B.11.256 p=$xiP/gris.01'        #
                                        # et a ete alors utilise pour 'v $xiird/AC1B.31.256 p=$xiP/gris.01'...                        #
                    if                  (    ("$formatI" == "$format_Suq")                                                              \
                                        ||   ("$formatI" == "$format_Sud")                                                              \
                                         ) then
                                        set                 formatR="$formatR_Std"
                    else
                                        if                  (    ("$formatI" == "$format_Puq")                                          \
                                                            ||   ("$formatI" == "$format_Pud")                                          \
                                                             ) then
                                                            set                 formatR="$formatR_Pal"
                                        else
#AAAAMMJJ:                                        EROR "format de la sequence d'images Argument incompatible avec un reformatage"     #
                                                            unset               formatR
                                        # Introduit le 20071019094054 lors de la generation de 'v $xias/CAYA.A1.5x5' afin de          #
                                        # forcer le 'if(...)' qui suit et donc utiliser "methode=2" et "dilater=VRAI" ci-apres...     #
                                        endif
                    endif
else
                    if                  ("$formatR" == "optimiser") then
                                        # Introduit le 20190602214418 pour 'v $xiia/.VASA.21.1.$U optimiser'...                       #
                                        set       XmaxR=`calculINS $Xmin+($Nhorizontale*$dimX)-1`
                                        set       YmaxR=`calculINS $Ymin+($Nverticale__*$dimY)-1`

                                        set       formatR="XminR=$Xmin XmaxR=$XmaxR YminR=$Ymin YmaxR=$YmaxR"

                                        unset     YmaxR
                                        unset     XmaxR
                    else
                    endif
endif

set                 Xmin_nomT=$Xmin
set                 Ymin_nomT=$Ymin
@                   Xmax_nomT = $dimX * $Nhorizontale - 1
@                   Ymax_nomT = $dimY * $Nverticale__ - 1
                                        # Extrema de l'image '$nomT'.                                                                 #
XYmaxNe             $Xmax_nomT $Ymax_nomT
                                        # Mise en place de '$formatI'...                                                              #

if                  ($?formatR == $EXIST) then
                                        # Le 20070125103144 je note l'aspect mysterieux du test precedent, puisque '$formatR' existe  #
                                        # par definition (il y a un 'set' tout a fait au debut). Peut-etre s'agit-il d'un archaisme   #
                                        # destine a assurer une transition... En tout cas, je le conserve puisque cela fonctionne     #
                                        # bien ainsi, mais voir a ce propos le 'unset' introduit le 20071019094054 ci-dessus...       #
                    set                 methode=7
                                        # Choix de la methode (7=centrage).                                                           #
                    $xci/format.01$X    A=$nomT                                                                                         \
                                                                                                                        $formatI        \
                                        methode=$methode                                                                                \
                                        R=$imageR                                                                                       \
                                                                                                                        $formatR
                                        # Construction du tableau HxV demande en le mettant dans un format connu...                   #
else
#AAAAMMJJ:                    $xci/acces$X        A=$nomT                                                                          \  #
#AAAAMMJJ:                                        R=$imageR                                                             $formatI      #

#20111214173700____:                    set                 formatR="$SformatR"                                                       #
                    SET1s               formatR = "$SformatR"

                    set                 methode=2
                                        # Choix de la methode (2=interpolation la meilleure).                                         #
                    @                   NepaisseurX = $Nhorizontale + 1
                    @                   NepaisseurY = $Nverticale__ + 1
                    @                   Nepaisseur = $NepaisseurX * $NepaisseurY
                                        # Choix du parametre d'epaississement en fonction du nombre d'images de la matrice...         #

                    $xci/format.01$X    A=$nomT                                                                                         \
                                                                                                                        $formatI        \
                                        methode=$methode                                                                                \
                                        dilater=$Dilater points=$Nepaisseur                                                             \
                                        R=$imageR                                                                                       \
                                                                                                                        $formatR
                                        # Construction du tableau HxV demande en le laissant dans le format Argument.                 #
endif

FileTmpE  nomT
                                        # Puis destruction de l'image temporaire.                                                     #



Copyright © Jean-François COLONNA, 2019-2024.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / École polytechnique, Institut Polytechnique de Paris, 2019-2024.