#######################################################################################################################################
#                                                                                                                                     #
#         T R A C E   D ' U N   P A V A G E   H E X A G O N A L   E T   R E M P L I S S A G E  :                                      #
#                                                                                                                                     #
#                                                                                                                                     #
#         Author of '$xiirv/.CARR.33.1.$U' :                                                                                          #
#                                                                                                                                     #
#                     Jean-Francois COLONNA (LACTAMME, 20161028093917).                                                               #
#                                                                                                                                     #
#######################################################################################################################################

$Z                  setParam            _____Diagonale                FAUX
$Z                                      # Parametre introduit le 20161030192547....                                                   #

$Z                  setParam            _____Erosion                  1
$Z                                      # ATTENTION : ce parametre semble tres lie au parametre 'v $xiirv/.TROR.11.$U _____Rayon'...  #

$Z                  setParam            _____Dilatation               1
$Z                                      # ATTENTION : ce parametre semble tres lie au parametre 'v $xiirv/.TROR.11.$U _____Rayon'...  #

$Z                  setParam            _____OptimiserIncrement       VRAI
$Z                                      # Parametre introduit le 20161114133704 (la valeur par defaut grantit la compatibilite        #
$Z                                      # anterieure et ne doit donc pas utiliser 'GetParam' au cas ou il y aurait des modifications  #
$Z                                      # dans 'v $xci/contours.22$K OPTMISER_AUTOMATIQUEMENT_L_INCREMENT'...).                       #

$Z                  setParam            _____UtiliserTaille           FAUX
$Z                                      # Parametre introduit le 20170530171910....                                                   #

$Z                  setParam            _____AvertirCouleurs          VRAI
$Z                                      # Parametre introduit le 20170530134546....                                                   #

$Z                  setParam            _____NiveauInitial            $NOIR_PLANCHER

$Z                  setParam            _____IncrementNiveau          1

$Z                  setParam            _____NiveauAleatoire          FAUX
$Z                                      # Parametre introduit le 20181225181146....                                                   #

$Z                  setParam            _____GraineNiveau             1947
$Z                                      # Parametre introduit le 20181225181146....                                                   #

$Z                  setParam            _____PaletteC                 $xiP/random.11

$Z                  SETParam            _____PerturberNiveaux         $NEXIST
$Z                  setParam            _____PerturberNiveauxIter     4
$Z                  setParam            _____PerturberNiveauxMx       0.02
$Z                  setParam            _____PerturberNiveauxMy       0.02
$Z                  setParam            _____PerturberNiveauxO        -5
$Z                  setParam            _____PerturberNiveauxE        +5
$Z                  setParam            _____PerturberNiveauxG        1515
$Z                                      # Parametres introduits le 20220728101233....                                                 #

$Z                  setParam            _____AttenuationA             0.5

$Z                  setParam            _____AttenuationB             0

#20161029131134____:$Z                  $xci/luminance.01$X                                                                        \  #
#20161029131134____:$Z                                      A=$_____ImagesR                                                        \  #
#20161029131134____:$Z                                                                                        $formatI       |     \  #
#20161029131134____:$Z                  $xci/seuil$X                                                                               \  #
#20161029131134____:$Z                                                                                        $formatI       |     \  #
#20161029131134____:$Z                  $xci/dilate.01$X                                                                           \  #
#20161029131134____:$Z                                      points=$_____Dilatation                                                \  #
#20161029131134____:$Z                                      eroder=VRAI                                                            \  #
#20161029131134____:$Z                                      R=$xTV/JOINTS                                                          \  #
#20161029131134____:$Z                                                                                        $formatI                #

#20161029131134____:$Z                  $xci/contours.22$X                                                                         \  #
#20161029131134____:$Z                                      A=$xTV/JOINTS                                                          \  #
#20161029131134____:$Z                                      niveau_initial=$_____NiveauInitial                                     \  #
#20161029131134____:$Z                                      increment_niveau=$_____IncrementNiveau                                 \  #
#20161029131134____:$Z                                                                                        $formatI       |     \  #
#20161029131134____:$Z                  $xci/vraies_C$X                                                                            \  #
#20161029131134____:$Z                                      p=$_____PaletteC                                                       \  #
#20161029131134____:$Z                                      R=$xTV/CARREAUX                                                        \  #
#20161029131134____:$Z                                                                                        $formatI                #

$Z                  FilSTmpB  FPaLeTtE

$Z                  $xciP/S_NIVEAU$X                                                                                                    \
$Z                                      paletteA=$_____PaletteC                                                                         \
$Z                                      niveau=$NOIR                                                                                    \
$Z                                      ROUGE=VRAI nR=$NOIR                                                                             \
$Z                                      VERTE=VRAI nV=$NOIR                                                                             \
$Z                                      BLEUE=VRAI nB=$NOIR                                                                             \
$Z                                      paletteR=$FPaLeTtE
$Z                                      # Il est imperatif que le NOIR reste NOIR car, en effet, il correspond aux interstices        #
$Z                                      # du carrelage (introduit le 20161030095958).                                                 #

$Z                  set       DiReCtIoN_1="$K_VIDE"

$Z                  set       DiReCtIoN_1="$DiReCtIoN_1"" est=VRAI"
$Z                  set       DiReCtIoN_1="$DiReCtIoN_1"" nord=VRAI"
$Z                  set       DiReCtIoN_1="$DiReCtIoN_1"" ouest=VRAI"
$Z                  set       DiReCtIoN_1="$DiReCtIoN_1"" sud=VRAI"

$Z                  set       DiReCtIoN_2="$K_VIDE"


$Z                  set       DiReCtIoN_2="$DiReCtIoN_2"" nord___est=$_____Diagonale"
$Z                  set       DiReCtIoN_2="$DiReCtIoN_2"" nord_ouest=$_____Diagonale"
$Z                  set       DiReCtIoN_2="$DiReCtIoN_2"" sud_ouest=$_____Diagonale"
$Z                  set       DiReCtIoN_2="$DiReCtIoN_2"" sud___est=$_____Diagonale"

$Z                  FilSTmpB  FCoNtOuRs
$Z                                      # Fichiers(s) introduit(s) le 20220728101233...                                               #

$Z                  $xci/luminance.01$X                                                                                                 \
$Z                                      A=$_____ImagesR                                                                                 \
$Z                                                                                                  $formatI                      |     \
$Z                  $xci/seuil$X                                                                                                        \
$Z                                                                                                  $formatI                      |     \
$Z                  $xci/dilate.01$X                                                                                                    \
$Z                                      points=$_____Erosion                                                                            \
$Z                                      eroder=VRAI                                                                                     \
$Z                                                                                                  $formatI                      |     \
$Z                  $xci/contours.22$X                                                                                                  \
$Z                                      utiliser_taille=$_____UtiliserTaille                                                            \
$Z                                      avertir_couleurs=$_____AvertirCouleurs                                                          \
$Z                                      optimiser_increment=$_____OptimiserIncrement                                                    \
$Z                                      niveau_initial=$_____NiveauInitial                                                              \
$Z                                      increment_niveau=$_____IncrementNiveau                                                          \
$Z                                      niveau_aleatoire=$_____NiveauAleatoire                                                          \
$Z                                      graine_niveau_aleatoire=$_____GraineNiveau                                                      \
$Z                                      $DiReCtIoN_1                                                                                    \
$Z                                      $DiReCtIoN_2                                                                                    \
$Z                                      R=$FCoNtOuRs                                                                                    \
$Z                                                                                                  $formatI

$Z                  if                  ($_____PerturberNiveaux == $EXIST) then
$Z                                      # Test introduit le 20220728101233...                                                         #
$Z                                      $xci/complement$X                                                                               \
$Z                                                          A=$FCoNtOuRs                                                                \
$Z                                                                                                                      $formatI  |     \
$Z                                      $xci/seuil$X                                                                                    \
$Z                                                          seuil=$BLANC_PLANCHER                                                       \
$Z                                                                                                                      $formatI  |     \
$Z                                      $xci/complement$X                                                                               \
$Z                                                          R=$FCoNtOuRs.masque                                                         \
$Z                                                                                                                      $formatI
$Z                                      # Et ceci afin de pouvoir restaurer le NOIR entre tous les contours qui, evidemment va etre   #
$Z                                      # perturbe "fractalement", comme tous les autres niveaux, ci-apres...                         #

$Z                                      $xci/acces$X                                                                                    \
$Z                                                          A=$FCoNtOuRs                                                                \
$Z                                                          convertir=VRAI                                                              \
$Z                                                          R=$FCoNtOuRs.flottant                                                       \
$Z                                                                                                                      $formatI

$Z                                      $xci/fract_2D.01$X                                                                              \
$Z                                                          standard=FAUX                                                               \
$Z                                                          iterations=$_____PerturberNiveauxIter                                       \
$Z                                                          mx=$_____PerturberNiveauxMx                                                 \
$Z                                                          my=$_____PerturberNiveauxMy                                                 \
$Z                                                          renormaliser=VRAI                                                           \
$Z                                                          o=$_____PerturberNiveauxO e=$_____PerturberNiveauxE                         \
$Z                                                          graine=$_____PerturberNiveauxG                                              \
$Z                                                          R=$FCoNtOuRs.perturbations                                                  \
$Z                                                                                                                      $formatI
$Z                                      # Ceci genere une perturbation dans [$_____PerturberNiveauxO,$_____PerturberNiveauxE] qui     #
$Z                                      # permettra ensuite de remplir chaque contour avec un niveau uniforme (ce qui se produit      #
$Z                                      # si '$_____PerturberNiveaux=$NEXIST'), mais par plusieurs niveaux voisins...                 #

$Z                                      $xci/somme_02$X                                                                                 \
$Z                                                          standard=FAUX                                                               \
$Z                                                          A1=$FCoNtOuRs.flottant                                                      \
$Z                                                          A2=$FCoNtOuRs.perturbations                                                 \
$Z                                                                                                                      $formatI  |     \
$Z                                      $xci/acces$X                                                                                    \
$Z                                                          standard=FAUX zero=FAUX                                                     \
$Z                                                                                                                      $formatI  |     \
$Z                                      $xci/and$X                                                                                      \
$Z                                                          A2=$FCoNtOuRs.masque                                                        \
$Z                                                          R=$FCoNtOuRs                                                                \
$Z                                                                                                                      $formatI
$Z                  else
$Z                  endif

$Z                  $xci/dilate.01$X                                                                                                    \
$Z                                      A=$FCoNtOuRs                                                                                    \
$Z                                      points=$_____Dilatation                                                                         \
$Z                                      dilater=VRAI                                                                                    \
$Z                                                                                                  $formatI                      |     \
$Z                  $xci/vraies_C$X                                                                                                     \
$Z                                      p=$FPaLeTtE                                                                                     \
$Z                                      R=$xTV/CARREAUX                                                                                 \
$Z                                                                                                  $formatI
$Z                                      # On notera qu'il faut d'abord eroder les interstices du carrelage afin d'etre sur que le     #
$Z                                      # remplissage sera bien recouvert ensuite par ces memes interstices ci-apres lorsque le       #
$Z                                      # remplissage servira de fond (voir "F=$xTV/CARREAUX" ci-apres). De plus, il faut             #
$Z                                      # utiliser les huit directions "cardinales" et ce afin de ne pas rompre la connexite          #
$Z                                      # de certains interieurs de contours qui sont faits de plusieurs morceaux (voir par exemple   #
$Z                                      # 'v $xiirv/TROR.44' pour laquelle il y a des "petits morceaux" faits d'un seul point et qui  #
$Z                                      # situes aux sommets de certains angles tres aigus...).                                       #
$Z                                      #                                                                                             #
$Z                                      # Les commentaires precedents ne sont plus d'actualite a compter du 20161030191023...         #
$Z                                      #                                                                                             #
$Z                                      # Le parametre "avertir_couleurs=" a ete introduit le 20170530134546...                       #
$Z                                      #                                                                                             #
$Z                                      # La possibilite de generer des niveaux aleatoires a ete introduite le 20181225181146...      #

$Z                  FilSTmpE  FCoNtOuRs

$Z        execRVB   $xci/scale$X                                                                                                        \
$Z                                      A=$xTV/CARREAUX%s                                                                               \
$Z                                      a=$_____AttenuationA b=$_____AttenuationB                                                       \
$Z                                      R=$xTV/CARREAUX%s                                                                               \
$Z                                                                                                  $formatI

$Z                  set       _____ParticulePara1="$K_VIDE"
$Z                  set       _____ParticulePara1="$_____ParticulePara1"" fond=VRAI"
$Z                  set       _____ParticulePara1="$_____ParticulePara1"" F=$xTV/CARREAUX"

$Z                  FilSTmpE  FPaLeTtE



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.