#######################################################################################################################################
# #
# D E F I N I T I O N D E L A R E P R E S E N T A T I O N D ' U N E N S E M B L E D E L I S T E S : #
# #
# #
# Author of '$xiirv/.CRYM.11.$U' : #
# #
# Jean-Francois COLONNA (LACTAMME, 20211209092811). #
# #
#######################################################################################################################################
$Z SETParam _____GenMatrice $EXIST
#20211211123152____:$Z setParam _____Phi1 `calcul $pis2-0.4` #
$Z setParam _____Phi1 $pis2
#20211211123152____:$Z setParam _____PhiN `calcul $pis2+0.4` #
$Z setParam _____PhiN $pis2
#20211211104716____:$Z setParam _____Rayon1 0.005 #
$Z setParam _____Rayon1 0.006
#20211211103701____:$Z setParam _____RayonN 0.012 #
#20211211104716____:$Z setParam _____RayonN 0.005 #
$Z setParam _____RayonN 0.020
#20211211104716____:$Z setParam _____RayonA 0.003 #
$Z setParam _____RayonA 0.004
#20211212104804____:$Z setParam _____Niveau1 $GRIS_8 #
$Z setParam _____Niveau1 $GRIS_4
#20211212104804____:$Z setParam _____NiveauN `calculINS $GRIS_1/2` #
$Z setParam _____NiveauN $GRIS_8
$Z setParam _____CoordonneeZ1 1
$Z setParam _____CoordonneeZN 0
#20211212104804____:$Z setParam _____NiveauA $GRIS_4 #
$Z setParam _____NiveauA $GRIS_2
#20211211115220____:$Z setParam _____Grossissement 1.5 #
$Z setParam _____Grossissement 1.2
$Z setParam _____Zoom 1.0
$Z setParam _____Palette $xiP/gris.N1
$Z setParam _____DistanceMinimale 0.004
$Z FilSTmpB FCoOrDoNnEeSP
$Z set index0=1
$Z set indexN=$#_____Listes
$Z set ArGs="p=$index0 d=$indexN lineaire=VRAI"
$Z set LThEtA=`$xci/valeurs_inte$X $ArGs vD=$_____Phi1 vA=$_____PhiN`
$Z # Definition de la liste des 'theta's parcourant le cercle trigonometrique [0,2.pi] pour #
$Z # une liste de criteres donnees, les 'phi's etant constants... #
$Z set LaStAnGlE=`calcul $dpi*($indexN-$index0)/($indexN-$index0+1)`
$Z # En effet, il ne faut pas aller de 0 a 2.pi car sinon, le permier et le dernier points sont #
$Z # alignes avec l'origine (au centre)... #
$Z set LCoOrDoNnEeZ=`$xci/valeurs_inte$X $ArGs vD=$_____CoordonneeZ1 vA=$_____CoordonneeZN`
$Z # Definition d'une coordonnee 'Z' outrepassant celle obtenue via les coordonnees spheriques #
$Z # (introduit le 20211211123152)... #
$Z set LNiVeAu=`$xci/valeurs_inte$X $ArGs vD=$_____Niveau1 vA=$_____NiveauN entier=VRAI`
$Z # Definition des niveaux de gris de chacune des cryptomonnaies. #
$Z set LRaYoN=`$xci/valeurs_inte$X $ArGs vD=$_____Rayon1 vA=$_____RayonN`
$Z # Definition des rayons des boules de materialisation de chacune des cryptomonnaies. #
$Z set index_=$index0
$Z if ($_____GenMatrice == $EXIST) then
$Z # Test introduit le 20211210095314... #
$Z set LNumErOs=`$xci/nombres$X premiere=$index0 derniere=$indexN`
$Z else
$Z endif
$Z set PaRaMs="$K_VIDE"
$Z set PaRaMs="$PaRaMs"" np=1"
$Z set PaRaMs="$PaRaMs"" spheriques=VRAI"
$Z set PaRaMs="$PaRaMs"" AXYZ=1 BXYZ=0"
$Z set PaRaMs="$PaRaMs"" p=$_____Palette"
$Z set PaRaMs="$PaRaMs"" editer_extrema_hors=FAUX"
$Z set PaRaMs="$PaRaMs"" Lz=1000 ZOOM=$_____Zoom"
$Z set PaRaMs="$PaRaMs"" ROTATION_OX=0"
$Z set PaRaMs="$PaRaMs"" ROTATION_OY=0"
$Z set PaRaMs="$PaRaMs"" ROTATION_OZ=0"
$Z set PaRaMs="$PaRaMs"" isoles=FAUX chainer=FAUX"
$Z set PaRaMs="$PaRaMs"" ajuster_points=VRAI"
$Z set PaRaMs="$PaRaMs"" equidistance=VRAI"
$Z set PaRaMs="$PaRaMs"" distance_minimale=$_____DistanceMinimale"
#20211211114716____:$Z set PaRaMs="$PaRaMs"" couronne=1" #
$Z set PaRaMs="$PaRaMs"" couronne=2"
$Z # On notera qu'une couronne trop petite (=1) implique un "anti-aliasing" avec le fond #
$Z # '$xTV/AXES' lorsqu'il est demande. Lorsqu'elle trop grande (=3 par exemple, cela impique #
$Z # des "defauts" periodiques sur les barres... #
$Z set PaRaMs="$PaRaMs"" RVB=VRAI"
$Z set PaRaMs="$PaRaMs"" chiffres=0"
$Z set _____NiveauP=`$xcg/MAX2.01$X a=$_____Niveau1 b=$_____NiveauN`
$Z while ($index_ <= $indexN)
$Z FilSTmpB LiStE_P
$Z echo $_____Listes[$index_] | \
$Z $R "/" "$K_NL" | \
$Z $xrv/duplique.01$X \
$Z ne=0 \
$Z fichier== \
$Z exemplaires=2 | \
$Z $xrv/decalage.01$X \
$Z ne=0 \
$Z fichier== \
$Z amplitude_decalage=+1 \
$Z > $LiStE_P.RHO
$Z # Les coordonnees 'RHO's sont donnees par les valeurs numeriques des criteres. #
$Z set NPoInTs1=`$CA $LiStE_P.RHO | $WCl`
$Z @ NPoInTs2 = $NPoInTs1 / 2
$Z echo $LThEtA[$index_] | \
$Z $xrv/duplique.01$X \
$Z ne=0 \
$Z fichier== \
$Z exemplaires=$NPoInTs1 \
$Z > $LiStE_P.THETA
$Z # Les coordonnees 'THETA's sont a priori constantes. #
$Z $xci/valeurs_inte$X \
$Z p=1 d=$NPoInTs2 \
$Z vD=0 vA=$LaStAnGlE \
$Z lineaire=VRAI | \
$Z $xrv/duplique.01$X \
$Z ne=0 \
$Z fichier== \
$Z exemplaires=2 | \
$Z $xrv/decalage.01$X \
$Z ne=0 \
$Z fichier== \
$Z amplitude_decalage=+1 \
$Z > $LiStE_P.PHI
$Z # Les coordonnees 'PHI's sont interpolees lineairement dans [0,2.pi]. #
$Z echo $LCoOrDoNnEeZ[$index_] | \
$Z $xrv/duplique.01$X \
$Z ne=0 \
$Z fichier== \
$Z exemplaires=$NPoInTs1 \
$Z > $LiStE_P$COORD_Z
$Z # Definition des coordonnees 'Z' (introduites le 20211211123152...). #
$Z echo $LNiVeAu[$index_] | \
$Z $xrv/duplique.01$X \
$Z ne=0 \
$Z fichier== \
$Z exemplaires=$NPoInTs1 \
$Z > $LiStE_P$NIVEAU
$Z # Definition des niveaux... #
$Z echo $LRaYoN[$index_] | \
$Z $xrv/duplique.01$X \
$Z ne=0 \
$Z fichier== \
$Z exemplaires=$NPoInTs1 \
$Z > $LiStE_P$RAYON
$Z # Definition des rayons... #
$Z if ($_____GenMatrice == $EXIST) then
$Z # Test introduit le 20211210095314... #
$Z $xrv/particule.10$X \
$Z npoints=$NPoInTs1 \
$Z $PaRaMs \
$Z LISTE_RHO=$LiStE_P.RHO \
$Z LISTE_THETA=$LiStE_P.THETA \
$Z LISTE_PHI=$LiStE_P.PHI \
$Z LISTE_Z=$_____CoordonneeZN \
$Z LISTE_NIVEAU=$_____NiveauP \
$Z LISTE_RAYON=$_____RayonN \
$Z grossissement=$_____Grossissement \
$Z R=$xTV/POLYGONES.$LNumErOs[$index_] \
$Z $formatI
$Z else
$Z endif
$Z $CA $LiStE_P.RHO \
$Z >>! $FCoOrDoNnEeSP.RHO
$Z $CA $LiStE_P.THETA \
$Z >>! $FCoOrDoNnEeSP.THETA
$Z $CA $LiStE_P.PHI \
$Z >>! $FCoOrDoNnEeSP.PHI
$Z $CA $LiStE_P$COORD_Z \
$Z >>! $FCoOrDoNnEeSP$COORD_Z
$Z $CA $LiStE_P$NIVEAU \
$Z >>! $FCoOrDoNnEeSP$NIVEAU
$Z $CA $LiStE_P$RAYON \
$Z >>! $FCoOrDoNnEeSP$RAYON
$Z FilSTmpE LiStE_P
$Z @ index_ = $index_ + 1
$Z end
$Z FilSTmpB FCoOrDoNnEeSA
$Z set LPhI=`$xci/valeurs_inte$X p=1 d=$NPoInTs2 lineaire=VRAI vD=0 vA=$LaStAnGlE`
$Z set index=1
$Z while ($index <= $NPoInTs2)
$Z echo "0\n1" | \
$Z $xrv/duplique.01$X \
$Z ne=0 \
$Z fichier== \
$Z exemplaires=1 \
$Z >>! $FCoOrDoNnEeSA.RHO
$Z echo $pis2 | \
$Z $xrv/duplique.01$X \
$Z ne=0 \
$Z fichier== \
$Z exemplaires=2 \
$Z >>! $FCoOrDoNnEeSA.THETA
$Z echo $LPhI[$index] | \
$Z $xrv/duplique.01$X \
$Z ne=0 \
$Z fichier== \
$Z exemplaires=2 \
$Z >>! $FCoOrDoNnEeSA.PHI
$Z echo $_____RayonA | \
$Z $xrv/duplique.01$X \
$Z ne=0 \
$Z fichier== \
$Z exemplaires=2 \
$Z >>! $FCoOrDoNnEeSA$RAYON
$Z @ index = $index + 1
$Z end
$Z set NPoInTsN=`$CA $FCoOrDoNnEeSA.RHO | $WCl`
$Z $xrv/particule.10$X \
$Z npoints=$NPoInTsN \
$Z $PaRaMs \
$Z LISTE_RHO=$FCoOrDoNnEeSA.RHO \
$Z LISTE_THETA=$FCoOrDoNnEeSA.THETA \
$Z LISTE_PHI=$FCoOrDoNnEeSA.PHI \
$Z LISTE_Z=$_____CoordonneeZN \
$Z p== \
$Z LISTE_ROUGE=$_____NiveauA \
$Z LISTE_VERTE=$_____NiveauA \
$Z LISTE_BLEUE=$_____NiveauA \
$Z LISTE_RAYON=$FCoOrDoNnEeSA$RAYON \
$Z grossissement=1 \
$Z R=$xTV/AXES \
$Z $formatI
$Z # Le "p==" est destine a faire prendre en compte {LISTE_ROUGE=,LISTE_VERTE=,LISTE_BLEUE=}... #
$Z FilSTmpE FCoOrDoNnEeSA
$Z set NPoInTsN=`$CA $FCoOrDoNnEeSP.RHO | $WCl`
$Z $xrv/particule.10$X \
$Z npoints=$NPoInTsN \
$Z $PaRaMs \
$Z LISTE_RHO=$FCoOrDoNnEeSP.RHO \
$Z LISTE_THETA=$FCoOrDoNnEeSP.THETA \
$Z LISTE_PHI=$FCoOrDoNnEeSP.PHI \
$Z LISTE_Z=$FCoOrDoNnEeSP$COORD_Z \
$Z projection_parallele=VRAI \
$Z LISTE_NIVEAU=$FCoOrDoNnEeSP$NIVEAU \
$Z LISTE_RAYON=$FCoOrDoNnEeSP$RAYON \
$Z grossissement=$_____Grossissement \
$Z fond=VRAI F=$xTV/AXES \
$Z R=$_____ImageR \
$Z $formatI
$Z FilSTmpE FCoOrDoNnEeSP
$Z if ($_____GenMatrice == $EXIST) then
$Z # Test introduit le 20211210095314... #
$Z set NChIfFrEs=`GetParam $xci/nombres$X chiffres`
$Z set NoMbRe_HV=3
$Z set index_=$index0
$Z while ($index_ <= $indexN)
$Z execRVB $xci/cache$X \
$Z A=$xTV/AXES%s \
$Z M=$xTV/POLYGONES.$LNumErOs[$index_]%s \
$Z R=$xTV/POLYGONES.$LNumErOs[$index_]%s \
$Z $formatI
$Z @ index_ = $index_ + 1
$Z end
$Z execRVB $xci/regroupe.02$Z \
$Z $xTV/POLYGONES. \
$Z $_____ImageR.$NoMbRe_HV"x"$NoMbRe_HV%s \
$Z $index0 1 \
$Z $NoMbRe_HV $NoMbRe_HV \
$Z "%s" \
$Z '$K_QD$formatR_Sdu$K_QD' \
$Z $NChIfFrEs \
$Z FAUX \
$Z FAUX \
$Z VRAI
$Z else
$Z endif