#######################################################################################################################################
#                                                                                                                                     #
#         G E N E R A T I O N   D ' U N   F R A C T A L   " C A R R E "   ( V E R S I O N   2 )  :                                    #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xiirf/.FRC2.11.6.$U' :                                                                                          #
#                                                                                                                                     #
#                     Jean-Francois COLONNA (LACTAMME, 20231105115115).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____Marge           1

$Z                  setParam            _____Zmin            $Z_
$Z                  setParam            _____Zmax            `calculINS $_____Zmin+$_____DimensionZ-1`

#20231105164202____:$Z                  setParam            _____DemiPave                 2                                           #
#20231106103731____:$Z                  setParam            _____DemiPave                 1                                           #

$Z                  set                 DimXY=`$xcg/MAX2.01$X x=$dimX y=$dimY`
#20231113160636____:$Z   setParam       _____DemiPave   `calculINS ((($P_/2)*$DimXY)/pow($DiMeNsIoN,$_____Iterations))-$_____Marge`   #
$Z                  setParam            _____DemiPave   `calculINS ((($P_/2)*$DimXY)/pow($DiMeNsIoN,$_____Iterations))`

$Z                  setParam            _____Renormaliser    $NEXIST
$Z                  setParam            _____MinX            0
$Z                  setParam            _____MaxX            1
$Z                  setParam            _____MinY            0
$Z                  setParam            _____MaxY            1
$Z                  setParam            _____MinZ            0
$Z                  setParam            _____MaxZ            1

$Z                  set       AmPlItUdE___X=`calcul $_____MaxX-$_____MinX`
$Z                  set       AmPlItUdE___Y=`calcul $_____MaxY-$_____MinY`
$Z                  set       AmPlItUdE___Z=`calcul $_____MaxZ-$_____MinZ`
$Z                  set       AmPlItUdE_XYZ=`$xcg/MAX3.01$X x=$AmPlItUdE___X y=$AmPlItUdE___Y z=$AmPlItUdE___Z signe="$K_VIDE"`

#20231113160636____:$Z                  IfBasic   (`$xcg/IFLT.01.x x=$AmPlItUdE_XYZ y=1` == $EXIST) ThenBasic                         #
$Z                  IfBasic   (`$xcg/IFNE.01.x x=$AmPlItUdE_XYZ y=1` == $EXIST) ThenBasic
#20231113160636____:$Z        set                 _____DemiPave=`calculINS ($AmPlItUdE_XYZ*($_____DemiPave+$_____Marge))-$_____Marge` #
$Z                            set                 _____DemiPave=`calculINS $AmPlItUdE_XYZ*$_____DemiPave`
$Z                                      # Correction introduite le 20231113124854 car, en effet, elle manquait...                     #
$Z                  ElseBasic
$Z                  EndifBasic

#20231205135347____:$Z                  set                 _____DemiPave=`calculINS $_____DemiPave-$_____Marge`                      #
$Z                  set                 _____DemiPave=`calculINS $_____DemiPave-($_____Marge)`

$Z                  IfBasic   (`$xcg/IFLT.01.x x=$_____DemiPave y=0` == $EXIST) ThenBasic
$Z                                      # Test introduit le 20231230175823 lors du recalcul de'v $xiirf/FRC2.41.2.3'...               #
$Z                            EROR      "Le parametre '$K_DOLLAR""_____DemiPave' est negatif : voir '$K_DOLLAR""_____Marge'."
$Z                            set       _____DemiPave=0
$Z                  ElseBasic
$Z                  EndifBasic

$Z                  unset     AmPlItUdE_XYZ
$Z                  unset     AmPlItUdE___Z
$Z                  unset     AmPlItUdE___Y
$Z                  unset     AmPlItUdE___X

$Z                  IfBasic             ($_____Renormaliser == $EXIST) ThenBasic
$Z                                      # Possibilite introduite le 20231107132027 pour 'v $xiirf/FRC2.31.2.2.21'...                  #
$Z                                      set                 NArGuMeNtS="$K_VIDE"
$Z                                      set                 NArGuMeNtS="$NArGuMeNtS"" forcer_extrema=VRAI"
$Z                                      set                 NArGuMeNtS="$NArGuMeNtS"" minimum_force=0 maximum_force=1"
$Z                                      # Introduit le 20231108095817 afin que les renormalisations soient faites de la meme facon    #
$Z                                      # quel que soit la valeur de '$_____Iterations'...                                            #

$Z                                      $CA                 $LiStEPoInTs.$ItErAtIoN.1$COORD_X                                     |     \
$Z                                      $xrv/normalise.01$X ne=0 fichier==                                                              \
$Z                                                          $NArGuMeNtS                                                                 \
$Z                                                          origine=$_____MinX extremite=$_____MaxX                                     \
$Z                                                                                        >  $LiStEPoInTs.$ItErAtIoN.2.$COORD_X

$Z                                      $CA                 $LiStEPoInTs.$ItErAtIoN.1$COORD_Y                                     |     \
$Z                                      $xrv/normalise.01$X ne=0 fichier==                                                              \
$Z                                                          $NArGuMeNtS                                                                 \
$Z                                                          origine=$_____MinY extremite=$_____MaxY                                     \
$Z                                                                                        >  $LiStEPoInTs.$ItErAtIoN.2.$COORD_Y

$Z                                      $CA                 $LiStEPoInTs.$ItErAtIoN.1$COORD_Z                                     |     \
$Z                                      $xrv/normalise.01$X ne=0 fichier==                                                              \
$Z                                                          $NArGuMeNtS                                                                 \
$Z                                                          origine=$_____MinZ extremite=$_____MaxZ                                     \
$Z                                                                                        >  $LiStEPoInTs.$ItErAtIoN.2.$COORD_Z

$Z                                      unset               NArGuMeNtS

$Z                                      $DELETE             $LiStEPoInTs.$ItErAtIoN.1$COORD_X
$Z                                      $DELETE             $LiStEPoInTs.$ItErAtIoN.1$COORD_Y
$Z                                      $DELETE             $LiStEPoInTs.$ItErAtIoN.1$COORD_Z

$Z                                      $MV                 $LiStEPoInTs.$ItErAtIoN.2.$COORD_X $LiStEPoInTs.$ItErAtIoN.1$COORD_X
$Z                                      $MV                 $LiStEPoInTs.$ItErAtIoN.2.$COORD_Y $LiStEPoInTs.$ItErAtIoN.1$COORD_Y
$Z                                      $MV                 $LiStEPoInTs.$ItErAtIoN.2.$COORD_Z $LiStEPoInTs.$ItErAtIoN.1$COORD_Z
$Z                  ElseBasic
$Z                  EndifBasic

$Z                  $CA                 $LiStEPoInTs.$ItErAtIoN.1$NIVEAU                                                          |     \
$Z                  $xrv/normalise.01$X ne=0 fichier==                                                                                  \
$Z                                      origine=`calcul $GRIS_1/$GRIS_8`                                                                \
$Z                                      extremite=`calcul $GRIS_8/$GRIS_8`                                                              \
$Z                                                                    >  $LiStEPoInTs.$ItErAtIoN.1.normalise$NIVEAU

$Z                  IfBasic             ($_____Zmin == $_____Zmax) ThenBasic
$Z                                      set                 NChIfFrEs="chiffres=0"
$Z                                      set                 SePaRaTeUr="$K_VIDE"
$Z                  ElseBasic
$Z                                      set                 NChIfFrEs="$K_VIDE"
$Z                                      set                 SePaRaTeUr="$K_sepP_C"
$Z                  EndifBasic

$Z                  $xrv/store_album$X  ne=$NPoInTs                                                                                     \
$Z                                      LISTE_X=$LiStEPoInTs.$ItErAtIoN.1$COORD_X                                                       \
$Z                                      LISTE_Y=$LiStEPoInTs.$ItErAtIoN.1$COORD_Y                                                       \
$Z                                      LISTE_Z=$LiStEPoInTs.$ItErAtIoN.1$COORD_Z                                                       \
$Z                                      translation_X=`calcul $_____DemiPave/$DimXY`                                                    \
$Z                                      translation_Y=`calcul $_____DemiPave/$DimXY`                                                    \
$Z                                      translation_Z=`calcul $_____DemiPave/$dimZ`                                                     \
$Z                                      LISTE_NIVEAU=$LiStEPoInTs.$ItErAtIoN.1.normalise$NIVEAU                                         \
$Z                                      dpX=$_____DemiPave dpY=$_____DemiPave dpZ=$_____DemiPave                                        \
$Z                                      $NChIfFrEs                                                                                      \
$Z                                      R=$_____ImageR$SePaRaTeUr                                                                       \
$Z                                                                                                  Zmin=$_____Zmin Zmax=$_____Zmax     \
$Z                                                                                                                      $formatI



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