#######################################################################################################################################
# #
# 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.