#######################################################################################################################################
#                                                                                                                                     #
#         D E F I N I T I O N   D E S   " A N N E A U X   O L Y M P I Q U E S "  :                                                    #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xiirs/.PROJ.y1.1.$U' :                                                                                          #
#                                                                                                                                     #
#                     Jean-Francois Colonna (LACTAMME, 20120724094516).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  SETParam            _____NAnneaux                 5

$Z                  setParam            _____GrandRayon               1.0

$Z                  setParam            _____PetitRayon               0.1

$Z                  setParam            _____AmplitudeO               1.0

$Z                  setParam            _____AXCosinus                1.2

$Z                  setParam            _____AYCosinus                0.5

$Z                  setParam            _____PCosinus                 $pi

$Z                  set                 PaRaMp="$K_VIDE"

$Z                  set                 PaRaMp="$PaRaMp"" PARAMETRE_R11=$_____GrandRayon"
$Z                  set                 PaRaMp="$PaRaMp"" PARAMETRE_R12=$_____GrandRayon"
$Z                  set                 PaRaMp="$PaRaMp"" PARAMETRE_R21=$_____PetitRayon"
$Z                  set                 PaRaMp="$PaRaMp"" PARAMETRE_R22=$_____PetitRayon"

$Z                  set                 PaRaMp="$PaRaMp"" PARAMETRE_KO=$_____AmplitudeO"
$Z                  set                 PaRaMp="$PaRaMp"" PARAMETRE_AO=2"
$Z                  set                 PaRaMp="$PaRaMp"" PARAMETRE_BO=0"

$Z                  set                 PaRaMp="$PaRaMp"" transformer_projections=VRAI ZOOM=0.5"

$Z                  set                 DeRnIeRe=4

$Z                  if                  ($_____NAnneaux <= $DeRnIeRe) then
$Z                                      set                 ReDuCtIoN=$xci/reduction_04$X
$Z                  else
$Z                                      set                 DeRnIeRe=16
$Z                                      set                 ReDuCtIoN=$xci/reduction_16$X

$Z                                      if                  ($_____NAnneaux <= $DeRnIeRe) then
$Z                                      else
$Z                                                          EROR      "Trop d'anneaux sont demandes, seuls '$DeRnIeRe' seront traces."
$Z                                      endif
$Z                  endif

$Z                  set                 InFiNi=1000000000
$Z                                      # De facon a ce que les '$xTV/TORE.????'s inexistants soient en dehors du cadre...            #
$Z                                      #                                                                                             #
$Z                                      # On notera que l'on utilise '$InFiNi' dans 'v $xiirs/$Fnota Debut_listG_PROJ_s1' comme une   #
$Z                                      # distance alors qu'il s'agit d'une coordonnee, mais cela importe peu car la distance d'un    #
$Z                                      # point de coordonnees {$InFiNi,$InFiNi,$InFiNi} a l'origine est superieure evidemment a      #
$Z                                      # '$InFiNi'...                                                                                #

$Z                  set                 AnGlE=`calcul -floor($_____NAnneaux/2)*$pi`

$Z                  set                 NumeroA=0

$Z                  while               ($NumeroA < $DeRnIeRe)
$Z                                      set                 NuMeRo=`calcul $NumeroA+1`
$Z                                      set                 NuMeRo=`$xci/nombres$X A="$K_VIDE" premiere=$NuMeRo derniere=$NuMeRo`

$Z                                      if                  ($NumeroA < $_____NAnneaux) then
$Z                                                          set  TrAnX=`calcul $_____AXCosinus*($AnGlE/$_____PCosinus)`
$Z                                                          set  TrAnY=`calcul $_____AYCosinus*cos($AnGlE)`
$Z                                      # Les centres des anneaux sont situes sur les extrema d'une cosinusoide...                    #

$Z                                                          $xrs/project2D.01$Z tore.21                                                 \
$Z                                                                              $xTV/TORE.$NuMeRo                                       \
$Z                                                                              "TRANSLATION_OX=$TrAnX TRANSLATION_OY=$TrAnY $PaRaMp"   \
$Z                                                                              $COORD_X $COORD_Y $COORD_Z                              \
$Z                                                                              FAUX $NEXIST

$Z                                      else
$Z                                                          execXYZ             $xci/init$X                                             \
$Z                                                                                                  standard=FAUX                       \
$Z                                                                                                  valeur=$InFiNi                      \
$Z                                                                                                  R=$xTV/TORE.$NuMeRo%s               \
$Z                                                                                                                      $formatI
$Z                                      endif

$Z                                      @                   NumeroA = $NumeroA + 1

$Z                                      set                 AnGlE=`calcul $AnGlE+$_____PCosinus`
$Z                  end

$Z                  execXYZ             $ReDuCtIoN          standard=FAUX                                                               \
$Z                                                          A=$xTV/TORE.                                                                \
$Z                                                          premiere=1 derniere=$DeRnIeRe pas=1                                         \
$Z                                                          postfixe=%s                                                                 \
$Z                                                          valeur=$InFiNi                                                              \
$Z                                                          R=$_____ImageT%s                                                            \
$Z                                                                              $formatI
$Z                                      # Le forcage de "valeur=$InFiNi" est destine au cas ou le format '$formatI' serait tel        #
$Z                                      # qu'une ou les deux dimensions soient impaires (c'est le cas de 'Pal' pour '$dimY'...).      #



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