#######################################################################################################################################
#                                                                                                                                     #
#         S U R J E C T I O N   F R A C T A L E   D E   [ 0 , 1 ]   D A N S   [ 0 , 1 ] x [ 0 , 1 ] x [ 0 , 1 ]   D E   P E A N O  :  #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xiirv/.PEAN.61.$U' :                                                                                            #
#                                                                                                                                     #
#                     Jean-Francois COLONNA (LACTAMME, 20220425125133).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  SETParam            _____DefinitionCube           $NEXIST

$Z                  SETParam            _____DefinitionSCubes         $NEXIST
$Z                                      # Parametre introduit le 20220520080326...                                                    #

$Z                  setParam            _____Arguments                "$K_VIDE"

$Z                  setParam            _____NIteration               (5)

$Z                  setParam            _____Eval                     "$K_VIDE"

$Z                  setParam            _____Z0                       0

$Z                  setParam            _____Rayon                    (0.006)

$Z                  setParam            _____FRExtremites             1
$Z                                      # Parametre introduit le 20220518122102...                                                    #

$Z                  setParam            _____FRCourbe                 1
$Z                                      # Parametre introduit le 20220518122102...                                                    #

$Z                  setParam            _____FRCube                   1
$Z                                      # Parametre introduit le 20220518122102...                                                    #

$Z                  setParam            _____Grossissement            1.8

$Z                  setParam            _____Zoom                     1

$Z                  setParam            _____RotationOX               0.0

$Z                  setParam            _____RotationOY               0.0

$Z                  setParam            _____RotationOZ               0.0

$Z                  setParam            _____Points                   32

$Z                  setParam            _____NombreR                  1

$Z                  setParam            _____Cubique                  FAUX

$Z                  setParam            _____DeriveeX                 0

$Z                  setParam            _____DeriveeY                 0

$Z                  setParam            _____DeriveeZ                 0

$Z                  setParam            _____Palette                  $xiP/blanc.21

$Z                  setParam            _____Noir_                    ($NOIR)

$Z                  setParam            _____Blanc                    ($BLANC)

$Z                  setParam            _____Fond                     "$K_VIDE"

$Z                  setParam            _____NAuCarre                 VRAI
$Z                                      # Parametre introduit le 20220402180549...                                                    #

$Z                  setParam            _____OmbresPortees            "$K_VIDE"
$Z                                      # Parametre introduit le 20220510102704...                                                    #

$Z                  SETParam            _____FEnTete                  0
$Z                                      # Parametre introduit le 20230123173053...                                                    #

$Z                  setParam            _____ParticulePara1           "$K_VIDE"

$Z                  setParam            _____Redirection              "$K_VIDE"
$Z                                      # Parametre introduit le 20220430081813...                                                    #

$Z                  set       DeFiNiTiOnCuBe="$K_VIDE"

$Z                  if        ($_____DefinitionCube == $EXIST) then
$Z                            set                 DeFiNiTiOnCuBe="definition_cube=VRAI"

$Z                            if        ($_____DefinitionSCubes == $EXIST) then
$Z                                      set       DeFiNiTiOnCuBe="$DeFiNiTiOnCuBe"" definition_sous_cubes=VRAI"
$Z                            else
$Z                            endif
$Z                  else
$Z                  endif

$Z                  FileTmpB            FiLeTmP_PEANO_all

$Z                  set                 NuMeRo=1

$Z                  foreach             NItErAtIoN ($_____NIteration)

$Z                                      set                 RaYoN=$_____Rayon[$NuMeRo]

$Z                                      set                 NoIr_=$_____Noir_[$NuMeRo]
$Z                                      set                 BlAnC=$_____Blanc[$NuMeRo]

$Z                                      FileTmpB            FiLeTmP_PEANO

$Z                                      $xci/valeurs_TransformationPeano3D$X                                                            \
$Z                                                          une_iteration=VRAI numero_iteration=$NItErAtIoN                             \
$Z                                                          chainer_points=FAUX                                                         \
$Z                                                          PT=1 PX=0 PY=0 PZ=0                                                         \
$Z                                                          definition_cube=FAUX                                                        \
$Z                                                          $_____Arguments                                                             \
$Z                                                                              >   $FiLeTmP_PEANO

$Z                                      set                 Parametre_T0=`$CA $FiLeTmP_PEANO | $HEA -1`
$Z                                      set                 Parametre_T1=`$CA $FiLeTmP_PEANO | $TAI -1`

$Z                                      echo                "Parametre_T0=$Parametre_T0"
$Z                                      echo                "Parametre_T1=$Parametre_T1"
$Z                                      # Edition introduite le 20220404102659...                                                     #

$Z                                      FileTmpE            FiLeTmP_PEANO

$Z                                      FileTmpB            FiLeTmP_PEANO

$Z                                      $xci/valeurs_TransformationPeano3D$X                                                            \
$Z                                                          une_iteration=VRAI numero_iteration=$NItErAtIoN                             \
$Z                                                          chainer_points=VRAI                                                         \
$Z                                                          $DeFiNiTiOnCuBe                                                             \
$Z                                                          $_____Arguments                                                             \
$Z                                                                              >   $FiLeTmP_PEANO

$Z                                      set                 NDeFiNiTiOn=`$CA $FiLeTmP_PEANO | $GRE " DefinitionCube=" | $WCl`
$Z                                      set                 NCoUrBe=`$CA $FiLeTmP_PEANO | $GRE -v " DefinitionCube=" | $WCl`

$Z                                      $CA                 $FiLeTmP_PEANO                                                        |     \
$Z                                      $AW                 ' { print $1 } '                                                      |     \
$Z                                      $SE                 -e "s/^.*=//"                                                               \
$Z                                                                              >   $FiLeTmP_PEANO$COORD_X

$Z                                      $CA                 $FiLeTmP_PEANO                                                        |     \
$Z                                      $AW                 ' { print $2 } '                                                      |     \
$Z                                      $SE                 -e "s/^.*=//"                                                               \
$Z                                                                              >   $FiLeTmP_PEANO$COORD_Y

$Z                                      $CA                 $FiLeTmP_PEANO                                                        |     \
$Z                                      $AW                 ' { print $3 } '                                                      |     \
$Z                                      $SE                 -e "s/^.*=//"                                                               \
$Z                                                                              >   $FiLeTmP_PEANO$COORD_Z

$Z                                      set                 Npart=`$CA $FiLeTmP_PEANO | $WCl`

#20220518122102____:$Z                                      $xci/valeurs_inte$X                                                    \  #
#20220518122102____:$Z                                                          premiere=1 derniere=$Npart                         \  #
#20220518122102____:$Z                                                          vD=$RaYoN vA=$RaYoN                                \  #
#20220518122102____:$Z                                                          lineaire=VRAI                                      \  #
#20220518122102____:$Z                                                          entiers=FAUX                                       \  #
#20220518122102____:$Z                                                                              >   $FiLeTmP_PEANO$RAYON          #

$Z                                      set                 RaYoN_ExTrEmItEs=`calcul $_____FRExtremites*$RaYoN`
$Z                                      set                 RaYoN_CoUrBe=`calcul $_____FRCourbe*$RaYoN`
$Z                                      set                 RaYoN_CuBe=`calcul $_____FRCube*$RaYoN`

$Z                                      echo                "$RaYoN_ExTrEmItEs"                                                         \
$Z                                                                              >>! $FiLeTmP_PEANO$RAYON

$Z                                      $xci/valeurs_inte$X                                                                             \
$Z                                                          premiere=2 derniere=`calcul $NCoUrBe-1`                                     \
$Z                                                          vD=$RaYoN_CoUrBe vA=$RaYoN_CoUrBe                                           \
$Z                                                          lineaire=VRAI                                                               \
$Z                                                          entiers=FAUX                                                                \
$Z                                                                              >>! $FiLeTmP_PEANO$RAYON

$Z                                      echo                "$RaYoN_ExTrEmItEs"                                                         \
$Z                                                                              >>! $FiLeTmP_PEANO$RAYON

$Z                                      if                  ($NDeFiNiTiOn > 0) then
$Z                                      # Test introduit le 20220519103908...                                                         #
$Z                                                $xci/valeurs_inte$X                                                                   \
$Z                                                                    premiere=1 derniere=$NDeFiNiTiOn                                  \
$Z                                                                    vD=$RaYoN_CuBe vA=$RaYoN_CuBe                                     \
$Z                                                                    lineaire=VRAI                                                     \
$Z                                                                    entiers=FAUX                                                      \
$Z                                                                                        >>! $FiLeTmP_PEANO$RAYON
$Z                                      # Generation de la liste des rayons...                                                        #
$Z                                      else
$Z                                      endif

$Z                                      $xci/valeurs_inte$X                                                                             \
$Z                                                          premiere=1 derniere=$NCoUrBe                                                \
$Z                                                          vD=$NoIr_ vA=$BlAnC                                                         \
$Z                                                          lineaire=VRAI                                                               \
$Z                                                          entiers=VRAI                                                                \
$Z                                                                              >>! $FiLeTmP_PEANO$LUMIN
$Z                                      # Generation de la liste des niveaux a utiliser pour acceder a la palette '$_____Palette'...  #

$Z                                      if                  ($NDeFiNiTiOn > 0) then
$Z                                                          $xci/valeurs_inte$X                                                         \
$Z                                                                              premiere=1 derniere=$NDeFiNiTiOn                        \
$Z                                                                              vD=$NOIR vA=$NOIR                                       \
$Z                                                                              lineaire=VRAI                                           \
$Z                                                                              entiers=VRAI                                            \
$Z                                                                                                  >>! $FiLeTmP_PEANO$LUMIN
$Z                                      # Le cube doit apparaitre derriere la trajectoire 'T'...                                      #
$Z                                      else
$Z                                      endif

$Z                                      $CA                 $FiLeTmP_PEANO$COORD_X                                                      \
$Z                                                                              >>! $FiLeTmP_PEANO_all$COORD_X
$Z                                      $CA                 $FiLeTmP_PEANO$COORD_Y                                                      \
$Z                                                                              >>! $FiLeTmP_PEANO_all$COORD_Y
$Z                                      $CA                 $FiLeTmP_PEANO$COORD_Z                                                      \
$Z                                                                              >>! $FiLeTmP_PEANO_all$COORD_Z
$Z                                      $CA                 $FiLeTmP_PEANO$RAYON                                                        \
$Z                                                                              >>! $FiLeTmP_PEANO_all$RAYON
$Z                                      $CA                 $FiLeTmP_PEANO$LUMIN                                                        \
$Z                                                                              >>! $FiLeTmP_PEANO_all$LUMIN

$Z                                      FileTmpE            FiLeTmP_PEANO

$Z                                      @         NuMeRo = $NuMeRo + 1
$Z                  end

$Z                  if        ("$_____Eval" != "$K_VIDE") then
$Z                            eval      "$_____Eval"
$Z                  else
$Z                  endif

$Z                  if        ("$_____ParticulePara1" != "$K_VIDE") then
$Z                            set       _____ParticulePara1=`eval echo "$_____ParticulePara1"`
$Z                  else
$Z                  endif

$Z                  set                 NpartX=`$CA $FiLeTmP_PEANO_all$COORD_X | $WCl`
$Z                  set                 NpartY=`$CA $FiLeTmP_PEANO_all$COORD_Y | $WCl`
$Z                  set                 NpartZ=`$CA $FiLeTmP_PEANO_all$COORD_Z | $WCl`

#20230123174625____:$Z                  set                 Npart=`$xcg/MIN3.01$X x=$NpartX y=$NpartY z=$NpartZ`                      #
$Z                  set                 Npart=`$xcg/MIN3.01$X x=$NpartX y=$NpartY z=$NpartZ signe="$K_VIDE"`

$Z                  if        ($_____FEnTete > 0) then
$Z                            @                   Npart = $Npart - 2 * $_____FEnTete
$Z                                      # Cela est equivalent a supprimer le premier et le dernier elements des fichiers et donc      #
$Z                                      # permettra d'interpoler entre chaque point d'une paire via "isoles=FAUX chainer=FAUX"        #
$Z                                      # ci-apres...                                                                                 #
$Z                  else
$Z                  endif



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