#!/bin/csh

#######################################################################################################################################
#                                                                                                                                     #
#         C H A N G E M E N T   D E   L A   N U M E R O T A T I O N   D ' U N E   S E Q U E N C E   D ' I M A G E S                   #
#         P A R   M I S E   D A N S   U N   O R D R E   S P I R A L E  :                                                              #
#                                                                                                                                     #
#                                                                                                                                     #
#         Utilisation :                                                                                                               #
#                                                                                                                                     #
#                   $xci/spirale.11$Z   <imageA> <imageR> <premiere> <derniere> <pas> [<postfixe>]                                    #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xci/spirale.11$Z' :                                                                                             #
#                                                                                                                                     #
#                     Jean-Francois Colonna (LACTAMME, AAAAMMJJhhmmss).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

set       imageA=$1
set       imageR=$2
set       premiere=$3
set       derniere=$4
set       pas=$5
set       postfixe=$6

@         NombreCarre = $derniere - $premiere
@         NombreCarre = $NombreCarre + 1
@         NombreCarre = $NombreCarre / $pas
                                        # Calcul du nombre de commandes a generer.                                                    #

set       Espirale="spirale=FAUX espirale=FAUX"

set       Index=$premiere

set       ListeX=`repeat $NombreCarre eval '$xci/spirale.11$X $Espirale index=$Index ex=VRAI ey=FAUX ; @ Index = $Index + 1'`
set       ListeX=`echo "$ListeX" | $SE -e "s/x=//g"`
set       TriListeX=`echo "$ListeX" | $R "$K_BLANC" "$K_NL" | $SOR -u`
set       MinimumX=$TriListeX[1]
set       MaximumX=$TriListeX[$#TriListeX]
@         DimensionX = $MaximumX - $MinimumX
@         DimensionX = $DimensionX + 1
                                        # Generation de la liste des 'X' de parcours de la spirale.                                   #

set       Index=$premiere

set       ListeY=`repeat $NombreCarre eval '$xci/spirale.11$X $Espirale index=$Index ex=FAUX ey=VRAI ; @ Index = $Index + 1'`
set       ListeY=`echo "$ListeY" | $SE -e "s/y=//g"`
set       TriListeY=`echo "$ListeY" | $R "$K_BLANC" "$K_NL" | $SOR -u`
set       MinimumY=$TriListeY[1]
set       MaximumY=$TriListeY[$#TriListeY]
@         DimensionY = $MaximumY - $MinimumY
@         DimensionY = $DimensionY + 1
                                        # Generation de la liste des 'Y' de parcours de la spirale.                                   #

set       iterer=$EXIST
                                        # Pour controler la boucle d'iteration...                                                     #

set       Index=$premiere

while     ($iterer == $EXIST)
          set       cx=`$xci/spirale.11$X $Espirale index=$Index ex=VRAI ey=FAUX  | $SE -e "s/x=//"`
          @         cx = $cx - $MinimumX
                                        # Generation de la coordonnee 'X' de l'image courante 'Index'.                                #
          set       cy=`$xci/spirale.11$X $Espirale index=$Index ex=FAUX ey=VRAI  | $SE -e "s/y=//"`
          @         cy = $cy - $MinimumY
                                        # Generation de la coordonnee 'Y' de l'image courante 'Index'.                                #
          set       IndexTranspose=`$xcg/AXPB.01$X a=$DimensionX x=$cy b=$cx`
          @         IndexTranspose = $IndexTranspose + $premiere
                                        # Generation d'un index tranpose.                                                             #

          @         numeroA = $Index - $premiere
          @         numeroA = $numeroA * $pas
          @         numeroA = $numeroA + $premiere
          set       numeroA=`$xci/nombres$X premiere=$numeroA derniere=$numeroA`
                                        # Generation du numero de l'image Argument courante.                                          #

          @         numeroR = $IndexTranspose - $premiere
          @         numeroR = $numeroR * $pas
          @         numeroR = $numeroR + $premiere
          set       numeroR=`$xci/nombres$X premiere=$numeroR derniere=$numeroR`
                                        # Generation du numero de l'image Resultat courante.                                          #

          set       commande="$CP       $imageA$numeroA$postfixe      $imageR$numeroR$postfixe"
                                        # Generation de la commande de copie.                                                         #
          eval      "$commande"
                                        # Et execution...                                                                             #

          if        ($Index >= $NombreCarre) then
                    set       iterer=$NEXIST
                                        # C'est fini...                                                                               #
          else
                    @         Index = $Index + 1
                                        # Index de l'image suivante...                                                                #
          endif
end




Copyright © Jean-François Colonna, 2019-2021.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / Ecole Polytechnique, 2019-2021.